IBM Support

IT30774: STORED PROCEDURE WITH SPL THAT CONTAINS BACK TO BACK DECODE STATEMENTS CAN ASSERT

Subscribe

You can track all active APARs for this component.

 

APAR status

  • Closed as duplicate of another APAR.

Error description

  • This problem was originally reported running 14.10.FC1 on sol64.
    
    My repro dupes the problem running both 12.10.FC13 and 14.10.FC1
    on sol64 and I also
    confirmed it dupes running 12.10.FC13 on linux x86_64 so it's
    not platform dependent.
    
    The following stack was reported from asserting thread on linux:
    
    0x000000000142e819 (oninit) afstack
    0x00000000014317f1 (oninit) afhandler
    0x0000000001431fd2 (oninit) affail_interface
    0x0000000001432561 (oninit) mt_ex_throw_sig
    0x000000000143b453 (oninit) afsig_handler
    0x0000003ddfa0e4c0 (Linux) <signal frame>
    0x0000000000a62052 (oninit) valstore
    0x00000000006bbe81 (oninit) ip_evalexpr
    0x00000000006c14b4 (oninit) runproc
    0x00000000006c2e81 (oninit) udrlm_spl_execute
    0x0000000000a86b9e (oninit) udrlm_exec_routine
    0x00000000006fe079 (oninit) udr_execute
    0x00000000007047d5 (oninit) exroutine
    0x000000000089c9db (oninit) geval
    0x0000000001667ec1 (oninit) ev_geval
    0x000000000166831e (oninit) new_eval
    0x00000000006bb3f0 (oninit) ip_evalexpr
    0x00000000006c14b4 (oninit) runproc
    0x00000000006c2e81 (oninit) udrlm_spl_execute
    0x0000000000a86b9e (oninit) udrlm_exec_routine
    0x00000000006fe079 (oninit) udr_execute
    0x00000000006c3b8c (oninit) ip_curnext
    0x00000000006c4ca1 (oninit) ip_fetch
    0x00000000008282c8 (oninit) getrow
    0x0000000000828b58 (oninit) fetchrow
    0x00000000005f7b98 (oninit) exfetch
    0x0000000000a4682b (oninit) sql_nfetch
    0x0000000000a46e9b (oninit) sq_nfetch
    0x0000000000b0b641 (oninit) sqmain
    0x000000000155d1ab (oninit) spawn_thread
    0x0000000001420130 (oninit) th_init_initgls
    0x0000000001465c48 (oninit) startup
    
    The following is an example of the SPL that reproduces the
    problem:
    
    CREATE PROCEDURE proc1(
      var1          LIKE tab1.c1,
      var2         CHAR(1) DEFAULT 'N'
    ) RETURNING VARCHAR(2) ;
    
      DEFINE loc1    VARCHAR(255);
      DEFINE loc2  LIKE tab1.c1;
      DEFINE loc3 VARCHAR(255);
    
      LET loc1       = NULL;
      LET loc2     = NULL;
      LET loc3    = NULL;
    
      LET  loc3 = DECODE (loc1,NULL,var1, loc1 || var1);
      LET  loc2  =decode (var2 , 'Y', 'DORMANCY_FEE',
    'INACTIVITY_FEE');
    
    END PROCEDURE;
    

Local fix

Problem summary

Problem conclusion

Temporary fix

Comments

  • This APAR is a duplicate of IT29479
    

APAR Information

  • APAR number

    IT30774

  • Reported component name

    INFORMIX SERVER

  • Reported component ID

    5725A3900

  • Reported release

    C10

  • Status

    CLOSED DUB

  • PE

    NoPE

  • HIPER

    NoHIPER

  • Special Attention

    NoSpecatt / Xsystem

  • Submitted date

    2019-10-31

  • Closed date

    2022-08-01

  • Last modified date

    2022-08-01

  • APAR is sysrouted FROM one or more of the following:

  • APAR is sysrouted TO one or more of the following:

Fix information

Applicable component levels

[{"Business Unit":{"code":"BU053","label":"Cloud & Data Platform"},"Product":{"code":"SSGU8G","label":"Informix Servers"},"Platform":[{"code":"PF025","label":"Platform Independent"}],"Version":"C10","Line of Business":[{"code":"LOB10","label":"Data and AI"}]}]

Document Information

Modified date:
01 August 2022