none
Internal error! The given key was not present in the dictionary.

    Question

  • I have a USQL job that was running fine for awhile, and suddenly is now getting this System Error every time, supposedly occurring at line -1. Details say `N/A`

    E_CSC_SYSTEM_INTERNAL: Internal error! The given key was not present in the dictionary.

    I've made no changes to the job from when it was working and when this error is now occuring.

    Job script:

    DECLARE @siteId string = "2ddad552-6353-4202-a6c9-96a567b85b34";
    
    IF (@siteId == "2ddad552-6353-4202-a6c9-96a567b85b34") THEN
      USE SCHEMA JeanRabel;
    ELSEIF (@siteId == "9b1b16b2-8d53-4b9a-8098-ce54f5e1959e") THEN
      USE SCHEMA MoleSaintNicolas;
    ELSEIF @siteId == "fdc87138-d937-4a91-8769-fc2a763ba284" THEN
      USE SCHEMA Staging;
    END;
    
    DROP TABLE IF EXISTS Account;
    
    CREATE TABLE Account(
      INDEX a_idx CLUSTERED (id ASC)
      DISTRIBUTED BY HASH (id)
    ) AS SELECT * FROM master.dbo.Accounts(@siteId) AS a;
    

    Anyone know what's wrong?

    Thanks

    Thursday, February 1, 2018 1:57 AM

All replies

  • Hi jeshica,

    I just need some more information to help diagnose this.  Did your job finish at least once successfully, and fails when you run it again, or did it fail after running once for some time? Does the failure happen in the compiling or running phase of your U-SQL job?

    Generally when errors happen with no changes to the script, it's due to problems with either authentication or the data itself.  I can't see the exact schema you're using, but there could also be a mismatch there.  

    Wednesday, February 7, 2018 10:58 PM
  • Hey Matt,

    The job finished successfully at least a few times before I started seeing the error every time. The failure happens in the compiling phase of the USQL job, the job doesn't even begin running when it fails. 

    I'm pretty sure it has something to do with calling `USE SCHEMA` inside of the if statements. It will work if I only use one IF statement or just specify using any of the Schemas.


    -- Jessica



    • Edited by jeshica Thursday, February 8, 2018 12:31 AM
    Thursday, February 8, 2018 12:31 AM
  • Since this is reporting as a system error, can you please file an incident through the standard support channels?

    This looks like a bug in the compiler.

    Thanks


    Michael Rys

    Thursday, February 8, 2018 1:37 AM
    Moderator
  • Hi Jessica,

    Michael below is right - the ADLA compiler hasn't supported USE SCHEMA within an IF block. However, we actually have a fix ready, and it will be shipped in an upcoming deployment so you should be unblocked soon.

    Thanks,

    Matt

    Thursday, February 8, 2018 11:06 PM