IBM Support

IT29322: WHEN RTREE NODE SPLITS AND HDR/RSS CONFIGURED, PAGES ON HDR/RSS GET OUT OF SYNC WITH PRIMARY DUE TO SLOT LENGTH DIFFERENCE

Subscribe

You can track all active APARs for this component.

 

APAR status

  • Closed as fixed if next.

Error description

  • So if you create a table that has a spatial column and then
    create an rtree index on that column.  When you do this and rows
    are inserts until an index node has to split then on 1 of the 2
    pages involved in the split, there will be 1 slot that is larger
    on the primary server than on the hdr/rss node.
    
    Example oncheck -pp output showing difference.
    
    From the primary:
    oncheck -pp 3145732 13
    addr             stamp    chksum nslots flag type         frptr
    frcnt next     p
    rev
    3:140            607767   4691   33     881  DATA         2690
    1270  0        0
    
            slot ptr   len   flg
            1    24    80    0
            2    104   80    0
            3    184   80    0
            4    264   80    0
            5    344   80    0
    ...
            30   2344  80    0
            31   2424  80    0
            32   2504  80    0
            33   2584  106   0
    
    From the secondary:
    oncheck -pp 3145732 13
    addr             stamp    chksum nslots flag type         frptr
    frcnt next     p
    rev
    3:140            607906   4624   33     881  DATA         2664
    1296  0        0
    
            slot ptr   len   flg
            1    24    80    0
            2    104   80    0
            3    184   80    0
            4    264   80    0
            5    344   80    0
    ...
            30   2344  80    0
            31   2424  80    0
            32   2504  80    0
            33   2584  80    0
    
    So slot 33 on the page is 106 bytes on the primary, but it's 80
    bytes on the secondary.
    
    This type of pages out of sync problem can cause problems if the
    servers have to reverse types (so secondary becomes primary)
    because now the page on the new primary thinks there is more
    space available on the page then on the new secondary and so if
    pages get enough out of sync that an extra slot can fit on 1
    page vs the other, it can then lead to 1 of 2 types of failures.
    
    Type 1:
    
    Assertion failure with failed log record apply
    Log record (OLDRSAM:HDELETE) failed, partnum 0x700050 rowid
    0x138c612e iserrno 111
    
    Type 2: Assertion failures caused by bfcheck error
     bfcheck: bad page: pg_frptr 3916 < sizeof(ifx_page_t) 24 or >
    slotbeg 3900
    
    So the bfcheck failure is showing that the page had written data
    into the slot table in the 2nd type.  In the 1st assertion the
    log record is failed to be applied because it can't find a slot
    to delete because it was over written by data (so 2 different
    ways for the same underlying problem to present itself)
    

Local fix

Problem summary

  • ****************************************************************
    * USERS AFFECTED:                                              *
    * Users of IDS version prior to 11.70.xC10.                    *
    ****************************************************************
    * PROBLEM DESCRIPTION:                                         *
    * WHEN RTREE NODE SPLITS AND HDR/RSS CONFIGURED, PAGES ON      *
    * HDR/RSS                                                      *
    * GET OUT OF SYNC WITH PRIMARY DUE TO SLOT LENGTH DIFFERENCE   *
    ****************************************************************
    * RECOMMENDATION:                                              *
    ****************************************************************
    

Problem conclusion

  • Fixed in IDS 11.70.xC9W2.
    

Temporary fix

Comments

APAR Information

  • APAR number

    IT29322

  • Reported component name

    INFORMIX SERVER

  • Reported component ID

    5725A3900

  • Reported release

    B70

  • Status

    CLOSED FIN

  • PE

    NoPE

  • HIPER

    NoHIPER

  • Special Attention

    NoSpecatt / Xsystem

  • Submitted date

    2019-06-03

  • Closed date

    2019-09-26

  • Last modified date

    2020-08-31

  • 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":"B70"}]

Document Information

Modified date:
01 September 2020