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 IT00795 Status: Geschlossen

SQL1476N WITH ERROR "-668" RETURNED WHEN SET INTEGRITY FOR AN MQT
OF "COMPRESS YES" AND "REFRESH IMMEDIATE"

Produkt:
DB2 FOR LUW / DB2FORLUW / A50 - DB2
Problembeschreibung:
The scenario is like below, 
1) create a base table, then create an MQT with "COMPRESS YES" 
and "REFRESH IMMEDIATE" 
2) load data into the base table, and run SET INTEGRITY for the 
base table 
3) for the MQT, activate NOT LOGGED INITIALLY and run SET 
INTEGRITY ... IMMEDIATE CHECKED in one UOW, it returns SQL1476N 
with error "-668". 
 
-> db2 +c -tvf alterMQT.sql 
ALTER TABLE TEST.MYMQT activate NOT LOGGED INITIALLY 
DB20000I  The SQL command completed successfully. 
 
SET INTEGRITY FOR TEST.MYMQT IMMEDIATE CHECKED 
DB21034E  The command was processed as an SQL statement because 
it was not a 
valid Command Line Processor command.  During SQL processing it 
returned: 
SQL1476N  The current transaction was rolled back because of 
error "-668". 
SQLSTATE=40506 
 
Internally, during SET INTEGRITY for the MQT, Automatic 
Dictionary Creation(ADC) is kicked off to build the compression 
dictionary when there is enough data in the MQT, however ADC 
fails with error "-668" and it lead to the failure of SET 
INTEGRITY.
Problem-Zusammenfassung:
**************************************************************** 
* USERS AFFECTED:                                              * 
* DB2 LUW                                                      * 
**************************************************************** 
* PROBLEM DESCRIPTION:                                         * 
* The scenario is like below,                                  * 
* 1) create a base table, then create an MQT with "COMPRESS    * 
* YES"                                                         * 
* and "REFRESH IMMEDIATE"                                      * 
* 2) load data into the base table, and run SET INTEGRITY for  * 
* the                                                          * 
* base table                                                   * 
* 3) for the MQT, activate NOT LOGGED INITIALLY and run SET    * 
* INTEGRITY ... IMMEDIATE CHECKED in one UOW, it returns       * 
* SQL1476N                                                     * 
* with error "-668".                                           * 
*                                                              * 
* -> db2 +c -tvf alterMQT.sql                                  * 
* ALTER TABLE TEST.MYMQT activate NOT LOGGED INITIALLY         * 
* DB20000I  The SQL command completed successfully.            * 
*                                                              * 
* SET INTEGRITY FOR TEST.MYMQT IMMEDIATE CHECKED               * 
* DB21034E  The command was processed as an SQL statement      * 
* because                                                      * 
* it was not a                                                 * 
* valid Command Line Processor command.  During SQL processing * 
* it                                                           * 
* returned:                                                    * 
* SQL1476N  The current transaction was rolled back because of * 
* error "-668".                                                * 
* SQLSTATE=40506                                               * 
*                                                              * 
* Internally, during SET INTEGRITY for the MQT, Automatic      * 
* Dictionary Creation(ADC) is kicked off to build the          * 
* compression                                                  * 
* dictionary when there is enough data in the MQT, however ADC * 
* fails with error "-668" and it lead to the failure of SET    * 
* INTEGRITY.                                                   * 
**************************************************************** 
* RECOMMENDATION:                                              * 
* Use MQT refresh method REFRESH DEFERRED instead of REFRESH   * 
* IMMEDIATE, then  follow REFRESH statement in separate.       * 
* Or, disable compression when create MQT table, then enable   * 
* compression after SET INTEGRITY.                             * 
****************************************************************
Local-Fix:
Use MQT refresh method REFRESH DEFERRED instead of REFRESH 
IMMEDIATE, then  follow REFRESH statement in separate. 
Or, disable compression when create MQT table, then enable 
compression after SET INTEGRITY.
verfügbare FixPacks:
DB2 Cancun Release 10.5.0.4 (also known as Fix Pack 4) for Linux, UNIX, and Windows
DB2 Version 10.5 Fix Pack 9 for Linux, UNIX, and Windows

Lösung
Use MQT refresh method REFRESH DEFERRED instead of REFRESH 
IMMEDIATE, then  follow REFRESH statement in separate. 
Or, disable compression when create MQT table, then enable 
compression after SET INTEGRITY.
Workaround
keiner bekannt / siehe Local-Fix
Weitere Daten
Datum - Problem gemeldet    :
Datum - Problem geschlossen :
Datum - der letzten Änderung:
04.04.2014
08.09.2014
08.09.2014
Problem behoben ab folgender Versionen (IBM BugInfos)
Problem behoben lt. FixList in der Version
10.5.0.4 FixList