IBM Support

IT29477: NON-LOGGING DATABASE, CONCURRENT TRIGGERED SPL EXECUTION CAN CAUSE CORRUPTED SYSPROCPLAN (SYSPROC BTREE)

Subscribe

You can track all active APARs for this component.

 

APAR status

  • Closed as unreproducible in next release.

Error description

  • In a Non-Logging Database, with two sessions executing same
    triggered procedure under different conditions.
    The procedures creates temp tables and indexes on temp tables.
    
    The first session trigger cause plan re-opt and save which
    deletes the plan with an internal save point.
    
    Before completing a second session triggering of the same
    procedure delete the plan that was just inserted by the first
    session.
    
    Before the second session completes, the first sessions tries to
    rollback to the save point, which tries to delete what it
    inserted, but that plan was already deleted by the second
    session, corrupting sysprocplan/procplan.
    
    Messages include:
    08:43:03  Rowid 0x6e03 not found for delete in partnum 0x300013,
    key 1
    08:43:04   Who: Session(6012, informix@server, 28957,
    0x943a0860)
                    Thread(1059432, sqlexec, 9436a838, 9)
                    File: rsnode.c Line: 2565
    08:43:04   Results: Delete failed
    08:43:04   Action: Run 'oncheck -cI procplan'
    08:43:04  stack trace for pid 6464 written to
    /var/tmp/af.2e50c256
    
    
    08:43:04   Results: Log record (OLDRSAM:HINSERT) in log 1957,
    offset 0x10949488 was not rolled back
    08:43:04   Action: Use 'onlog' to view the transaction and
    repair manually.
    08:43:04  stack trace for pid 6425 written to
    /var/tmp/af.2e50c256
    08:43:04   See Also: /var/tmp/af.2e50c256
    08:43:04  Rollback error 126
    08:43:04  Assert Failed: Rollback error 126
    
    
    ---------------
    
    Stack:
    
    
    afstack
    afhandler
    affail_interface
    btdelitem
    doitem
    logundo
    rlogm_undo
    rbacktxnlogs
    sprback
    rssprback
    excommand
    ip_evalsql
    runproc
    udrlm_spl_execute
    udrlm_exec_routine
    udr_execute
    exroutine
    execproc
    aud_execproc
    excommand
    dotrstmts
    dotrigs
    ferafttrig
    addone
    insone_next
    doinsert
    excommand
    ip_evalsql
    runproc
    udrlm_spl_execute
    udrlm_exec_routine
    udr_execute
    exroutine
    execproc
    aud_execproc
    excommand
    dotrstmts
    dotrigs
    ferafttrig
    addone
    insone_next
    doinsert
    excommand
    ip_evalsql
    runproc
    udrlm_spl_execute
    udrlm_exec_routine
    udr_execute
    exroutine
    execproc
    aud_execproc
    excommand
    dotrigs
    ferafttrig
    addone
    insone_next
    doinsert
    excommand
    sq_execute
    sqmain
    spawn_thread
    th_init_initgls
    startup
    

Local fix

  • Use Logging Database
    

Problem summary

  • ****************************************************************
    * USERS AFFECTED:                                              *
    * Users of Informix Server releases prior to 12.10             *
    ****************************************************************
    * PROBLEM DESCRIPTION:                                         *
    * see Error Description                                        *
    ****************************************************************
    * RECOMMENDATION:                                              *
    * Upgrade to 12.10 or higher.                                  *
    ****************************************************************
    

Problem conclusion

  • The problem is no longer present in 12.10.  The underlying
    architectural/design change cannot be back-ported to the 11.70
    code line.
    

Temporary fix

Comments

APAR Information

  • APAR number

    IT29477

  • Reported component name

    INFORMIX SERVER

  • Reported component ID

    5725A3900

  • Reported release

    B70

  • Status

    CLOSED UR1

  • PE

    NoPE

  • HIPER

    NoHIPER

  • Special Attention

    NoSpecatt / Xsystem

  • Submitted date

    2019-06-18

  • Closed date

    2022-04-27

  • Last modified date

    2022-04-27

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

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

Fix information

  • Fixed component name

    INFORMIX SERVER

  • Fixed component ID

    5725A3900

Applicable component levels

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

Document Information

Modified date:
28 April 2022