SQL Server Job Agent fails SSIS package with error: Option “/CALLERINFO” is not valid

I was editing some pre-existing SQL Server Agent jobs the other day, adding some interconnectivity and changing steps around as I’ve done hundreds of times before.  These job steps are used to execute SSIS packages (SQL Server Integration Services) on the server and have been running for months (years?) without fail.  However, after I made my changes they started failing on the steps I had edited, throwing the bizarre error:

Option “/CALLERINFO” is not valid.  The command line parameters are invalid.

After some frantic Googling and some initial confusion, I twigged on the fact that all changes I’d made had been done, crucially, from my desktop, which is currently running the new 2012 (“Denali”) version of SSMS (SQL Server Management Studio).  As it turns out, there’s a bug in the RC0 release of SQL Server 2012 that adds the CALLERINFO command line parameter (which doesn’t seem to be documented on MSDN) to any SQL Server Job Agent steps that execute SSIS packages, even if the target instance of SQL Server is a previous version.  “What’s the issue there?”, I hear you cry.  Well, the CALLERINFO parameter is a new addition to SQL Server 2012 and is not known by older versions (we’re running SQL Server 2008 R2 on the target machine).  The good news is, that Microsoft are aware of the issue and have fixed it for the RTM version.

Until then though, there is a workaround.  Edit your SQL Agent job step, choose the “Command line” tab and click “Edit the command line manually”.  Then just remove the “/CALLERINFO SQLAGENT” parameter from the command line arguments.

Simples.

UPDATE: It seems that in the final release of SQL Server 2012, the SQL Job Agent “Command line” tab is no longer present.  To get around this, you can simply browse to the relevant job in your SSMS Object Explorer, and script the job.  This allows you to modify the “@command” parameter, just as you would have done previously via the GUI.

Solutions Architect at Indicia. More years than I care to remember wrangling SQL Server and .NET, now mainly AWS. Data geek, football fan, and Xbox gamer. Check out my other blog Press B To Parent if you’re a gamer.

Leave a Reply

5 Comments

  1. Richard Rose

    Had exactly the same problem last week. Very strangely though, when I looked at the job usng the SQL2005 SSMS (yes, some of our sytems are still 2005), there was no /CALLERINFO option showing on the command line, so it must strip it off in the UI. Added and deleted a couple of spaces on the end of the command line to make sure it was saved ans it ran fine.

  2. aeonymous

    Thank you much for posting this! Saved me hours!

  3. Sqltag

    When i removed the “/CALLERINFO SQLAGENT” Got the following error
    Enter decryption password: Missing argument for option “decrypt”.

Next ArticleMicrosoft Releases Visual Studio 2011 Beta and Windows 8 Consumer Preview