home clear 64x64
en blue 200x116 de orange 200x116 info letter User
suche 36x36
Neueste VersionenFixList
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
Haben Sie Probleme? - Kontaktieren Sie uns.
Kostenlos registrieren anmeldung-x26
Kontaktformular kontakt-x26

DB2 - Problembeschreibung

Problem IC82326 Status: Geschlossen

ADJUST FILTER FACTOR FOR QUERIES WITH HOST VARIABLES AGAINST TABLES WITH
CONSTRAINTS

Produkt:
DB2 FOR LUW / DB2FORLUW / 970 - DB2
Problembeschreibung:
A query that includes host variables against a table with 
constraints can have a check added to the optimized SQL to 
validate the host variables are within the proper range of the 
constraints.  This provides an early out and prevents the query 
from running against the actual tables if the values would not 
return any rows. 
 
This operator does not filter any rows in the actual output. 
However, the filter factor estimate for this operator reduces 
the estimated cardinality of the results, causing the access 
plan to underestimate the actual cost. 
 
For instance, the following example shows the GENROW filter 
factor results in a estimate of 0.111111 rows.  Applied to the 
base table, that reduces the estimate from 40 rows down to 
4.44444 rows.  Since this operator does not actually filter any 
rows, so the filter factor should be 1 and keeping the estimate 
of 
40 rows. 
 
 
CREATE TABLE DB2INST1.TEST1 (COL1 INT, COL2 INT); 
ALTER TABLE DB2INST1.TEST1 ADD CONSTRAINT COL1_CHK CHECK (COL1 
BETWEEN 1 AND 4) ENFORCED ENABLE QUERY OPTIMIZATION; 
ALTER TABLE DB2INST1.TEST1 ADD CONSTRAINT COL2_CHK CHECK (COL2 
BETWEEN 0 AND 127) ENFORCED ENABLE QUERY OPTIMIZATION; 
 
 
Original Statement: 
------------------ 
select col2 
from db2inst1.test1 
where col1 = ? 
 
 
Optimized Statement: 
------------------- 
SELECT Q3.COL2 AS "COL2" 
FROM 
   (SELECT Q1.$C0 
   FROM (VALUES 0) AS Q1 
   WHERE (? < 127) AND (0 < ?)) AS Q2, DB2INST1.TEST1 AS Q3 
WHERE (Q3.COL1 = ?) 
 
 
               Rows 
              RETURN 
              (   1) 
               Cost 
                I/O 
                | 
              4.44444 
              NLJOIN 
              (   2) 
              15.646 
                 2 
          /-----+------\ 
     0.111111            40 
      TBSCAN           TBSCAN 
      (   3)           (   4) 
    0.00025113         15.6458 
         0                2 
        |                | 
         1              1000 
 TABFNC: SYSIBM    TABLE: DB2INST1 
      GENROW            TEST1 
        Q1               Q3
Problem-Zusammenfassung:
**************************************************************** 
* USERS AFFECTED:                                              * 
* DB2 UDB Version 9.7                                          * 
**************************************************************** 
* PROBLEM DESCRIPTION:                                         * 
* See Error Description                                        * 
**************************************************************** 
* RECOMMENDATION:                                              * 
* Upgrade to Version 9.7 FixPack 7.                            * 
****************************************************************
Local-Fix:
verfügbare FixPacks:
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

Lösung
Workaround
keiner bekannt / siehe Local-Fix
Bug-Verfolgung
Vorgänger  : APAR is sysrouted TO one or more of the following: IC88354 
Nachfolger : 
Weitere Daten
Datum - Problem gemeldet    :
Datum - Problem geschlossen :
Datum - der letzten Änderung:
28.03.2012
05.11.2012
05.11.2012
Problem behoben ab folgender Versionen (IBM BugInfos)
9.7.FP7
Problem behoben lt. FixList in der Version
9.7.0.7 FixList