DB2 - Problem description
| Problem IC97878 | Status: Closed |
SQL30020N ON ROLLBACK, IF CONNECTING TO DB2 10.1 SERVER VIA DB2 CONNECT 9.7 GATEWAY | |
| product: | |
DB2 CONNECT / DB2CONNCT / A10 - DB2 | |
| Problem description: | |
USERS AFFECTED:
IBM Data Server Clients, or applications using IBM Data Server
Driver for JDBC and SQLJ, connecting to a DB2 version 10.1
server, via an intermediate DB2 or DB2 Connect 'gateway' server,
may experience this issue.
PROBLEM DESCRIPTION:
On a 3-tier connection to a DB2 10.1 (i.e. via a DB2 Connect
version 9.7 'gateway') an application may fail with one of the
following error messages:
IBM Data Server Client:
SQL30020N Execution of the command or SQL statement failed
because of a
syntax error in the communication data stream that will
affect the
successful execution of subsequent commands and SQL
statements:
Reason Code "0x124C"("011D")"".
IBM Data Server Driver for JDBC and SQLJ
[jcc][t4][2034][11148][3.64.106] Execution failed due to a
distribution protocol error that caused deallocation of the
conversation.
A DRDA Data Stream Syntax Error was detected. Reason: 0x1900.
ERRORCODE=-4499, SQLSTATE=58009
This occurs after a rollback operation is performed on a
connection. In db2diag.log on the 'gateway' server, the
following entries should be seen:
2013-06-25-14.38.29.754733-240 E54260E772 LEVEL: Error
PID : 12658 TID : 46912937912640PROC :
db2sysc
INSTANCE: irytir NODE : 000 DB : SAMPLE
APPHDL : 0-9 APPID:
9.15.111.176.36602.130625183827
AUTHID : NEWTON
EDUID : 18 EDUNAME: db2agentg (SAMPLE )
FUNCTION: DB2 UDB, DRDA Application Server,
sqljsParseRdbCmmRllbck, probe:416
MESSAGE : DIA5000C A DRDA AS token "RECOVERABLE" was detected.
The diagnostic
data returned is (SRVDGN): "FUNCTION ID = 0277 , PROBE
POINT = 0416 ,
TRACE POINT = 0100 , SUBCODE1 = FFFFFFFF804B008D,
SUBCODE2 =
0000000000001900, SUBCODE3 = 0000000000000008, ERROR
MSG = Parser:
Invalid DDM code point".
2013-06-25-14.38.29.806805-240 I55033E624 LEVEL: Error
PID : 12658 TID : 46912937912640PROC :
db2sysc
INSTANCE: irytir NODE : 000 DB : SAMPLE
APPHDL : 0-9 APPID:
9.16.120.176.36602.130625183827
AUTHID : NEWTON
EDUID : 18 EDUNAME: db2agentg (SAMPLE )
FUNCTION: DB2 UDB, DRDA Application Server,
sqljsParseRdbCmmRllbck, probe:100
MESSAGE : ZRC=0x804B008D=-2142568307=SQLJS_SYNTAX "SYNTAX ERROR"
DATA #1 : DDM Object, PD_TYPE_DDM_OBJECT, 16 bytes
data length : 4
codepoint : 0x1900 ( MONITOR )
length : 8 ( COMPLETE )
The reason for SQL30020N to occur in this scenario, is that on
connections to DB2 10.1 and later, DB2 sends the MONITOR element
(DRDA codepoint x'1900') in conjunction with the rollback
(RDBRLLBCK, codepoint x'200F'). However, in a 3-tier scenario,
the decision on whether to send the MONITOR element inside the
RDBRLLBCK needs to be based on the gateway version, not the
server version. DB2 Connect version 9.7 does not support the
MONITOR element inside the RDBRLLBCK. | |
| Problem Summary: | |
**************************************************************** * USERS AFFECTED: * * ALL * **************************************************************** * PROBLEM DESCRIPTION: * * See Error Description * **************************************************************** * RECOMMENDATION: * * Upgrade to DB2 10.1 Fixpack 4 * **************************************************************** | |
| Local Fix: | |
For connections to a DB2 version 10.1, utilize a direct connection if possible. | |
| available fix packs: | |
DB2 Version 10.1 Fix Pack 4 for Linux, UNIX, and Windows | |
| Solution | |
First fixed in DB2 10.1 Fixpack 4 | |
| Workaround | |
not known / see Local fix | |
| Timestamps | |
Date - problem reported : Date - problem closed : Date - last modified : | 22.11.2013 09.06.2014 09.06.2014 |
| Problem solved at the following versions (IBM BugInfos) | |
| Problem solved according to the fixlist(s) of the following version(s) | |
| 10.1.0.4 |
|