DB2 - Problem description
| Problem IC84690 | Status: Closed |
QUERY WITH A UNION AND TWO CORRELATED BRANCHES MIGHT RETURN INCORRECT RESULTS IN PARTITIONED DATABASE ENVIRONMENTS | |
| product: | |
DB2 FOR LUW / DB2FORLUW / 950 - DB2 | |
| Problem description: | |
If you are using the partitioned database environment and
your query satisfies the following conditions, then the results
returned might be incorrect
1. there is a table, T1, that is hash distributed across two or
more database partitions;
2. T1 is correlated to multiple branches below a UNION;
3. each branch of the UNION is correlated to at least one
different column in T1;
4. one of the branches is correlated to the hash distribution
key of T1;
5. the columns in the select list of each UNION branch includes
the correlation column.
The following is an example of a query that satisfies the above
conditions, where T1 is hash distributed on column X:
SELECT *
FROM T1,
TABLE(SELECT X FROM T2 WHERE X = T1.X
UNION ALL
SELECT Y FROM T3 WHERE Y = T1.Y); | |
| Problem Summary: | |
**************************************************************** * USERS AFFECTED: * * All users of database partitioning feature. * **************************************************************** * PROBLEM DESCRIPTION: * * See Error Description * **************************************************************** * RECOMMENDATION: * * Upgrade to DB2 version 9.5 Fix Pack 10 * **************************************************************** | |
| Local Fix: | |
You can avoid the problem by rewriting the query to remove the correlation below the UNION. | |
| Solution | |
Problem was first fixed in Version 9.5 Fix Pack 10 | |
| Workaround | |
See Local Fix | |
| BUG-Tracking | |
forerunner : APAR is sysrouted TO one or more of the following: IC85422 IC85425 follow-up : | |
| Timestamps | |
Date - problem reported : Date - problem closed : Date - last modified : | 18.06.2012 21.08.2012 07.12.2012 |
| Problem solved at the following versions (IBM BugInfos) | |
9.5.FP10 | |
| Problem solved according to the fixlist(s) of the following version(s) | |
| 9.5.0.10 |
|