DB2 - Problem description
Problem IC67020 | Status: Closed |
DB2_ANTIJOIN, DB2 SHOULD CONVERT ELIGIBLE OUTER JOIN TO ANTIJOIN | |
product: | |
DB2 FOR LUW / DB2FORLUW / 950 - DB2 | |
Problem description: | |
To improve performance, when the registry variable DB2_ANTIJOIN is set to anything other than NO, DB2 should convert an eligible OUTER JOIN into an ANTIJOIN. To be eligible, all the following must be true: 1. The OUTER JOIN must have an IS NULL predicate on a column from the NULL producing side. If the column is not the join column then it must be marked NOT NULL. 2. Null producing side of the OUTER JOIN must be a base table with no local predicates except for the IS NULL predicate. 3. It is not a federated query. 4. The select clause of the query must not reference any column from the null producing side of the left outer join. example: select t1.* from t1 left outer join t2 on t1.c1 = t2.c1 where t2.c2 IS NULL. | |
Problem Summary: | |
**************************************************************** * USERS AFFECTED: * * All users who might be using the DB2_ANTIJOIN variable * **************************************************************** * PROBLEM DESCRIPTION: * * To improve performance DB2 converts eligible outer join to * * antijoin. * **************************************************************** * RECOMMENDATION: * * Please upgrade to DB2 version 950 fix pack 6 * **************************************************************** | |
Local Fix: | |
available fix packs: | |
DB2 Version 9.5 Fix Pack 6a for Linux, UNIX, and Windows | |
Solution | |
This enhancement was put into DB2 version 950 fix pack 6 | |
Workaround | |
not known / see Local fix | |
Comment | |
This is an enhancement which will convert an outer join with a IS NULL predicate on the null producing side into an antijoin | |
BUG-Tracking | |
forerunner : APAR is sysrouted TO one or more of the following: IC68450 IC68451 follow-up : | |
Timestamps | |
Date - problem reported : Date - problem closed : Date - last modified : | 10.03.2010 27.06.2011 05.07.2011 |
Problem solved at the following versions (IBM BugInfos) | |
9.5.0 | |
Problem solved according to the fixlist(s) of the following version(s) | |
9.5.0.8 |