IBM Support

IT17556: INCORRECT RESULTS ARE POSSIBLE WHEN JOIN AGAINST CDE TABLES IS DONE AND AN UNDOCUMENTED JOIN SUPPORT REGISTRY VARIABLE SET

Subscribe

You can track all active APARs for this component.

 

APAR status

  • Closed as program error.

Error description

  • If an undocumented join support registry variable is set and
    the plan has a left early out join with residual predicate,
    then sql might loose rows if:
    
    1.  Join between 3 or more column organized tables, using
    equality predicates
    
    2.  One of the tables has a primary key constraint that is
    referenced in the join
    
    3.  The table with the primary key constraint joins 2 or more
    other tables on the primary key constraint, but not the same
    columns; e.g. if primary key constraint is on T1 (a,b), then T1
    joins T2 on column a, and T1 joins T3 on column b.  It can
    likely occur with single column primary key as well; e.g using
    the same example, but change primary key to (a).  As long as the
    residual predicate completes the qualification of the primary
    key, then we should hit this problem.
    
    
    Example of exfmt:
    
        3) HSJOIN: (Hash Join)
            Cumulative Total Cost:         26173.5
            Cumulative CPU Cost:         2.31262e+10
            Cumulative I/O Cost:         5252
            Cumulative Re-Total Cost:     26173.5
            Cumulative Re-CPU Cost:     2.31262e+10
            Cumulative Re-I/O Cost:     5252
            Cumulative First Row Cost:     26173.5
            Estimated Bufferpool Buffers:     4
    
            Arguments:
            ---------
            EARLYOUT: (Early Out flag)
                LEFT                             <<<<<<<<<<<<<<<<
            SEMIJOIN: (Semi-join flag)
                FALSE
    
            Predicates:
            ----------
            2) Predicate used in Join,
                Comparison Operator:         Equal (=)
                Subquery Input Required:     No
                Filter Factor:             1
    
                Predicate Text:
                --------------
                (Q1.OBJVERS = Q3.OBJVERS)
    
    
            3) Residual Predicate,
    <<<<<<<<<<<<<<<<<<<<
                Comparison Operator:         Equal (=)
                Subquery Input Required:     No
                Filter Factor:             0.0833333
    
                Predicate Text:
                --------------
                (Q2.SID_ZLOG_MOD = Q1.SID).
    

Local fix

  • UNSET AN UNDOCUMENTED JOIN SUPPORT REGISTRY VARIABLE  AND
    RESTART INSTANCE
    

Problem summary

  • ****************************************************************
    * USERS AFFECTED:                                              *
    * ALL                                                          *
    ****************************************************************
    * PROBLEM DESCRIPTION:                                         *
    * See Error Description                                        *
    ****************************************************************
    * RECOMMENDATION:                                              *
    * Upgrade to DB2 11.1 Mod1 Fix Pack 1                          *
    ****************************************************************
    

Problem conclusion

  • First fixed in DB2 11.1 Mod1 Fix Pack 1
    

Temporary fix

Comments

APAR Information

  • APAR number

    IT17556

  • Reported component name

    DB2 FOR LUW

  • Reported component ID

    DB2FORLUW

  • Reported release

    B10

  • Status

    CLOSED PER

  • PE

    NoPE

  • HIPER

    NoHIPER

  • Special Attention

    NoSpecatt / Xsystem

  • Submitted date

    2016-10-18

  • Closed date

    2017-05-11

  • Last modified date

    2017-05-11

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

    IT17472

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

Fix information

  • Fixed component name

    DB2 FOR LUW

  • Fixed component ID

    DB2FORLUW

Applicable component levels

[{"Business Unit":{"code":"BU053","label":"Cloud & Data Platform"},"Product":{"code":"SSEPGG","label":"DB2 for Linux- UNIX and Windows"},"Platform":[{"code":"PF025","label":"Platform Independent"}],"Version":"11.1","Line of Business":{"code":"LOB10","label":"Data and AI"}}]

Document Information

Modified date:
29 June 2020