Unsupported DDM commands
The DDM commands BNDCPY, BNDDPLY, DRPPKG and DSCRDBTBL are not supported by Db2® Version 9.5 for Linux®, UNIX, and Windows when it is acting as a DRDA application server (DRDA AS).
Symptoms
DDM command | DDM code point | Description |
---|---|---|
BNDCPY | X'2011' | Copy an existing relational database (RDB) package |
BNDDPLY | X'2016' | Deploy an existing RDB package |
DRPPKG | X'2007' | Drop a package |
DSCRDBTBL | X'2012' | Describe an RDB table |
FD:OCA data objects | DDM code point | Description |
---|---|---|
FDOEXT | X'147B' | Formatted Data Object Content Architecture (FD:OCA) Data Extents |
FDOOFF | X'147D' | FD:OCA Data Offsets |
The most common error message in this situation is SQL30020N ("Execution failed because of a Distributed Protocol Error that will affect the successful execution of subsequent commands and SQL statements").
Causes
Distributed Data Management Architecture (DDM) is part of the DRDA protocol. The DDM commands BNDCPY, BNDDPLY, DRPPKG and DSCRDBTBL exist in all of the DRDA levels that are supported by Db2 Version 9.5 for Linux, UNIX, and Windows but the DRDA application server does not support these DDM commands.
Likewise, a Db2 Version 9.5 for Linux, UNIX, and Windows DRDA application server does not support the FDOEXT and FDOOFF code points. These code points are used in the SQLDTA descriptor that is sent to server when you submit a column-wise array input request.
Diagnosing the problem
If you obtain a Db2 trace on the DRDA application server, you will see a message similar to the following in response to these commands:ERROR MSG = Parser: Command Not Supported.
Resolving the problem
There are currently no supported alternatives for the BNDCPY and BNDDPLY DDM commands.
To drop a package, use the SQL statement DROP PACKAGE. For example, connect to the Db2 Version 9.5 for Linux, UNIX, and Windows DRDA application server and send a DROP PACKAGE statement in an EXECUTE IMMEDIATE request. Db2 Version 9.5 for Linux, UNIX, and Windows will process that request successfully.
SELECT * FROM TAB1
. To avoid problems with the FDOEXT and FDOOFF code points, use row-wise array input requests instead of parameter-wise (or column-wise) array input requests.