IBM Support

IT34063: BOOLEAN PREDICATES RETURN WRONG RESULT WITH NULL INPUT

Subscribe to this APAR

By subscribing, you receive periodic emails alerting you to the status of the APAR, along with a link to the fix after it becomes available. You can track this item individually or track all items by product.

Notify me when this APAR changes.

Notify me when an APAR for this component changes.

 

APAR status

  • Closed as program error.

Error description

  • The boolean predicates (IS TRUE, IS NOT FALSE etc.) are
    returning a NULL result with NULL input.  Boolean predicates
    should never return a NULL result.  When used in a where-clause,
    the problem may not be noticeable since a NULL (UNKNOWN) result
    in a where-clause returns 0 rows.  However, the problem is
    apparent if the boolean predicate is preceded with NOT in the
    where-clause:
    
         create table T (B boolean)
         DB20000I  The SQL command completed successfully.
    
         insert into T values (NULL)
         DB20000I  The SQL command completed successfully.
    
         select * from T where not(B is false)
    
         B
         ------
                <-- Wrong, one row should be returned
           0 record(s) selected.
    
    Also, the problem can be seen when the boolean predicate is
    referenced in a select-list:
    
         select B is true from T
    
         1
         ------
              - <-- Wrong, should be 0
    
           1 record(s) selected.
    

Local fix

  • Use the corresponding built-in functions instead: SYSIBM.ISTRUE,
    SYSIBM.ISNOTTRUE etc.
    

Problem summary

  • ****************************************************************
    * USERS AFFECTED:                                              *
    * ALL                                                          *
    ****************************************************************
    * PROBLEM DESCRIPTION:                                         *
    * See Error Description                                        *
    ****************************************************************
    * RECOMMENDATION:                                              *
    * Upgrade to Db2 version 11.1 fix pack 6                       *
    ****************************************************************
    

Problem conclusion

  • First fixed in Db2 version 11.1 fix pack 6
    

Temporary fix

Comments

APAR Information

  • APAR number

    IT34063

  • Reported component name

    DB2 FOR LUW

  • Reported component ID

    DB2FORLUW

  • Reported release

    B10

  • Status

    CLOSED PER

  • PE

    NoPE

  • HIPER

    YesHIPER

  • Special Attention

    NoSpecatt / Xsystem

  • Submitted date

    2020-08-31

  • Closed date

    2021-03-17

  • Last modified date

    2021-03-29

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

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

    IT35060

Fix information

  • Fixed component name

    DB2 FOR LUW

  • Fixed component ID

    DB2FORLUW

Applicable component levels

[{"Line of Business":{"code":"LOB10","label":"Data and AI"},"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"}]

Document Information

Modified date:
31 March 2021