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

APPLICATION MAY FAIL WITH -901 WHEN ACCESSING DGTT DUE TO THE WRONG
COUNTER INJECTED INTO THE CACHE BY ANOTHER CONNECTION

Produkt:
DB2 FOR LUW / DB2FORLUW / 970 - DB2
Problembeschreibung:
Applocation may fail with -901 when accessing DGTT due to the 
wrong counter injected into the cache by another connection. 
When the drop table fails on the DGTT due not able to write 
a log record because of log full situation or for any other 
reason, the "Number of active user temps" count is not 
maintained. 
 
Reproduction: 
CONNECTION 1: 
 
declare global temporary table t1 (i int) on commit preserve 
rows not logged 
commit 
DROP table session.t1 -> force this to fail 
rollback 
insert into session.t1 values 1 
 
CONNECTION 2: 
insert into session.t1 values 1 --> fails with  -901 as 
 the cached entry from connection 1 was incorrectly 
resolved due to the wrong counter that was injected into the 
cache by connection 1. 
 
 
This is similar to LI73859, however this only occurs when there 
is an error during logging - as we rely on the log record to 
maintain the count of active user temps correctly. 
 
SYMPTOM: 
a) one of the following 2 errors: 
 
SQL0901N  The SQL statement failed because of a non-severe 
system error. 
Subsequent SQL statements can be processed.  (Reason 
"sqlrl_userTempOpen: 
usertemp entry not found".)  SQLSTATE=58004 
 
or 
 
SQL0901N  The SQL statement failed because of a non-severe 
system error. 
Subsequent SQL statements can be processed.  (Reason 
"sqlrl_userTempIUD: 
tid/fid not found".)  SQLSTATE=58004 
 
 
b) The db2diag.log should contain the following probes: 
 
2009-10-14-14.57.03.172886-240 I1026949E507       LEVEL: Error 
PID     : 15116                TID  : 183035119808PROC : 
db2agent (xxxxxxxx) 0 
INSTANCE: xxxxxxxx             NODE : 000         DB   : 
NYGRCPI5 
APPHDL  : 0-143                APPID: 
139.172.165.181.27102.091014184 
AUTHID  : xxxxxxx 
FUNCTION: DB2 UDB, relation data serv, sqlrr_write_logrec, 
probe:60 
 
(there will likely be other probes about failure to write log 
records)
Problem-Zusammenfassung:
Applocation may fail with -901 when accessing DGTT due to the 
wrong counter injected into the cache by another connection. 
When the drop table fails on the DGTT due not able to write 
a log record because of log full situation or for any other 
reason, the "Number of active user temps" count is not 
maintained.
Local-Fix:
verfügbare FixPacks:
DB2 Version 9.7 Fix Pack 2 for Linux, UNIX, and Windows
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 9a 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 10 for Linux, UNIX, and Windows

Lösung
Problem was first fixed in Version 9.7 Fix Pack 2
Workaround
keiner bekannt / siehe Local-Fix
Weitere Daten
Datum - Problem gemeldet    :
Datum - Problem geschlossen :
Datum - der letzten Änderung:
29.10.2009
04.06.2010
04.06.2010
Problem behoben ab folgender Versionen (IBM BugInfos)
9.7.FP2
Problem behoben lt. FixList in der Version
9.7.0.2 FixList