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 IC68939 Status: Closed

PERFORMANCE ISSUE WHEN CAST AROUND LITERAL FOR BIT DATA IS PRESENT

product:
DB2 FOR LUW / DB2FORLUW / 970 - 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         * 
* onlywhenit is on one side and not another and only when      * 
* literals.DB2 generate non-optimal plans because BIT_STRING   * 
* functionisinjected and it prevents certain optimization      * 
* logic. Pleaseconsider the following examples:CAST(x'00' AS   * 
* CHAR(1) FOR BIT DATA) = CAST(x'01' AS CHAR(1)FORBIT DATA)-   * 
* will perform wellx'00'    = x'01'- will perform              * 
* wellCAST(x'00' AS CHAR(1) FOR BIT DATA) = x'01'- here        * 
* PERFROMANCE is BAD.                                          * 
**************************************************************** 
* RECOMMENDATION:                                              * 
* Upgrade to DB2 9.7 FP3                                       * 
****************************************************************
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.7 Fix Pack 3 for Linux, UNIX, and Windows
DB2 Version 9.7 Fix Pack 3a for Linux, UNIX, and Windows
DB2 Version 9.7 Fix Pack 4 for Linux, UNIX, and Windows
DB2 Version 9.7 Fix Pack 5 for Linux, UNIX, and Windows
DB2 Version 9.7 Fix Pack 6 for Linux, UNIX, and Windows
DB2 Version 9.7 Fix Pack 7 for Linux, UNIX, and Windows
DB2 Version 9.7 Fix Pack 8 for Linux, UNIX, and Windows
DB2 Version 9.7 Fix Pack 9 for Linux, UNIX, and Windows
DB2 Version 9.7 Fix Pack 9a for Linux, UNIX, and Windows
DB2 Version 9.7 Fix Pack 10 for Linux, UNIX, and Windows

Solution
Problem was first fixed in Version 9.7 Fix Pack 3
Workaround
not known / see Local fix
Timestamps
Date  - problem reported    :
Date  - problem closed      :
Date  - last modified       :
03.06.2010
19.10.2010
19.10.2010
Problem solved at the following versions (IBM BugInfos)
9.7.FP3
Problem solved according to the fixlist(s) of the following version(s)
9.7.0.3 FixList
9.7.0.3 FixList