DB2 - Problem description
Problem IT35968 | Status: Closed |
WHILE QUERYING THE WEB SERVICE NICKNAME, FEDERATION SERVER REPORTS ERROR SQL1822N | |
product: | |
DB2 FOR LUW / DB2FORLUW / B50 - DB2 | |
Problem description: | |
While querying the web service nickname, federation server reports following error: SQL1822N Unexpected error code "SAXException" received from data source "***.***.***". Associated text and tokens are "Expected end of tag ' soapenv:Envelope '". SQLSTATE=560BD And in the db2diag.log there are following error messages: 2021-01-15-14.29.15.148000+060 E2687F765 LEVEL: Error PID : 9968 TID : 44224 PROC : db2syscs.exe INSTANCE: **** NODE : 000 DB : S0340 APPHDL : 0-65022 APPID: *LOCAL.****.210115130801 UOWID : 6 ACTID: 1 AUTHID : ***** HOSTNAME: HHOS1617 EDUID : 44224 EDUNAME: db2agent (S0340) 0 FUNCTION: DB2 UDB, SOAP client code, setSOAPError, probe:30 MESSAGE : ZRC=0x00000002=2 SQL0002N The bind file name is not valid. DIA8002C A deadlock has occurred, rolling back transaction. DATA #1 : unsigned integer, 4 bytes 38317 DATA #2 : String, 40 bytes Expected end of tag '.soapenv:Envelope.' 2021-01-15-14.29.15.148000+060 I3454F782 LEVEL: Error PID : 9968 TID : 44224 PROC : db2syscs.exe INSTANCE: **** NODE : 000 DB : S0340 APPHDL : 0-65022 APPID: *LOCAL.****.210115130801 UOWID : 6 ACTID: 1 AUTHID : ***** HOSTNAME: ****** EDUID : 44224 EDUNAME: db2agent (S0340) 0 FUNCTION: DB2 UDB, SOAP client code, SOAP_Get_Body, probe:100 MESSAGE : ZRC=0x00000002=2 SQL0002N The bind file name is not valid. DIA8002C A deadlock has occurred, rolling back transaction. DATA #1 : String, 29 bytes SAXException in SOAP_Get_Body DATA #2 : String, 40 bytes Expected end of tag '.soapenv:Envelope.' It says the XML file is missing end tag. The root cause of this issue is before passing the XML to XML parser, federation server needs to get the soap response header, and the header and the body is sending back together from remote web service. While getting the response header, federation server uses the same buffer to store the soap response and uses "memcpy" to move the buffer content. While moving the content the destination address and source address can overlap, and this leads to some undefined behavior. The correct usage should be "memmove". | |
Problem Summary: | |
**************************************************************** * USERS AFFECTED: * * all * **************************************************************** * PROBLEM DESCRIPTION: * * See Error Description * **************************************************************** * RECOMMENDATION: * * Upgrade to Db2 11.5.5.1 or higher * **************************************************************** | |
Local Fix: | |
Solution | |
Workaround | |
**************************************************************** * USERS AFFECTED: * * all * **************************************************************** * PROBLEM DESCRIPTION: * * See Error Description * **************************************************************** * RECOMMENDATION: * * Upgrade to Db2 11.5.5.1 or higher * **************************************************************** | |
Comment | |
Upgrade to Db2 11.5.5.1 or higher | |
Timestamps | |
Date - problem reported : Date - problem closed : Date - last modified : | 19.02.2021 06.04.2021 06.04.2021 |
Problem solved at the following versions (IBM BugInfos) | |
Problem solved according to the fixlist(s) of the following version(s) |