home clear 64x64
en blue 200x116 de orange 200x116 info letter User
suche 36x36
Latest versionsfixlist
11.1.0.7 FixList
10.5.0.9 FixList
10.1.0.6 FixList
9.8.0.5 FixList
9.7.0.11 FixList
9.5.0.10 FixList
9.1.0.12 FixList
Have problems? - contact us.
Register for free anmeldung-x26
Contact form kontakt-x26

DB2 - Problem description

Problem IC68993 Status: Closed

PERFORMANCE ISSUE WHEN CAST AROUND LITERAL FOR BIT DATA IS PRESENT

product:
DB2 FOR LUW / DB2FORLUW / 980 - DB2
Problem description:
This problem happens ONLY WHEN CAST for BIT DATA and only when 
it is on one side and not another and only when literals. 
DB2 generate non-optimal plans because BIT_STRING function is 
injected and it prevents certain optimization logic. Please 
consider the following examples: 
 
CAST(x'00' AS CHAR(1) FOR BIT DATA) = CAST(x'01' AS CHAR(1) FOR 
BIT DATA) 
- will perform well 
 
x'00'    = x'01' 
- will perform well 
 
CAST(x'00' AS CHAR(1) FOR BIT DATA) = x'01' 
- here PERFROMANCE is BAD.
Problem Summary:
**************************************************************** 
* USERS AFFECTED:                                              * 
* All                                                          * 
**************************************************************** 
* PROBLEM DESCRIPTION:                                         * 
* This problem happens ONLY WHEN CAST for BIT DATA and only    * 
* when                                                         * 
* it is on one side and not another and only when literals.    * 
*                                                              * 
* DB2 generate non-optimal plans because BIT_STRING function   * 
* is                                                           * 
* injected and it prevents certain optimization logic. Please  * 
*                                                              * 
* consider the following examples:                             * 
*                                                              * 
*                                                              * 
*                                                              * 
* CAST(x'00' AS CHAR(1) FOR BIT DATA) = CAST(x'01' AS CHAR(1)  * 
* FOR                                                          * 
* BIT DATA)                                                    * 
*                                                              * 
* - will perform well                                          * 
*                                                              * 
*                                                              * 
*                                                              * 
* x'00'    = x'01'                                             * 
*                                                              * 
* - will perform well                                          * 
*                                                              * 
*                                                              * 
*                                                              * 
* CAST(x'00' AS CHAR(1) FOR BIT DATA) = x'01'                  * 
*                                                              * 
* - here PERFROMANCE is BAD.                                   * 
**************************************************************** 
* RECOMMENDATION:                                              * 
* Upgrade to DB2 V9.8 FP4                                      * 
****************************************************************
Local Fix:
rewrite the statement in the following manner 
CAST(x'00' AS CHAR(1) FOR BIT DATA) = CAST(x'01' AS CHAR(1) FOR 
BIT DATA)
available fix packs:
DB2 Version 9.8 Fix Pack 4 for AIX and Linux
DB2 Version 9.8 Fix Pack 5 for AIX and Linux

Solution
First fixed in DB2 v 9.8 Fixpack 4
Workaround
not known / see Local fix
Timestamps
Date  - problem reported    :
Date  - problem closed      :
Date  - last modified       :
07.06.2010
01.08.2011
01.08.2011
Problem solved at the following versions (IBM BugInfos)
9.8.FP4
Problem solved according to the fixlist(s) of the following version(s)
9.8.0.4 FixList