APAR status
Closed as program error.
Error description
Mirror Bulk Apply is a form of CDC fast apply that can be configured for applying to a Db2 Warehouse database. This form of fast apply organizes Insert/Update/Delete (IUD) operations into a Unit Of Work (UOW) that consists of batches of delete operations and insert operations, with separate batches for each table. Each batch of delete operations and insert operations on a table are applied via a Db2 Warehouse External Table. The default database encoding for a Db2 Warehouse database is UTF-8, and Db2 Warehouse requires the encoding of all data in an external table be UTF-8 or Latin-9. The character set for a graphic or vargraphic column is always UTF-16BE. CDC was storing the data for a graphic or vargraphic column in UTF-16BE in the external table. This caused the external table apply to fail with sqlcode -20569 sqlstate 428IB reason code '1' or sqlcode -20580 sqlstate 22551. This was because Db2 Warehouse was expecting UTF-8 bytes and either could not interpret the UTF-16BE bytes or the length in bytes was too long (since all UTF-16BE bytes are 2 bytes long and most UTF-8 bytes are 1 byte long). This has been fixed. CDC now stores graphic or vargraphic column data in UTF-8 in the external table.
Local fix
Workaround is to use CHAR or VARCHAR instead of GRAPHIC o VARGRAPHIC.
Problem summary
**************************************************************** * USERS AFFECTED: * * This issue affects clients applying data to Db2 Warehouse. * **************************************************************** * PROBLEM DESCRIPTION: * * CDC for Db2 was storing the data for a graphic or vargraphic * * column in UTF-16BE in an external table. This caused the * * external table apply to fail with sqlcode -20569 sqlstate * * 428IB reason code '1' or sqlcode -20580 sqlstate 22551. This * * was because Db2 Warehouse was expecting UTF-8 bytes and * * either could not interpret the UTF-16BE bytes or the length * * in bytes was too long (since all UTF-16BE bytes are 2 bytes * * long and most UTF-8 bytes are 1 byte long). This has been * * fixed. CDC now stores graphic or vargraphic column data in * * UTF-8 in the external table. * **************************************************************** * RECOMMENDATION: * * Upgrade to IBM Data Replication CDC for Db2 11.4.0.2-5528 or * * later. * **************************************************************** Mirror Bulk Apply is a form of CDC fast apply that can be configured for applying to a Db2 Warehouse database. This form of fast apply organizes Insert/Update/Delete operations into a Unit Of Work (UOW) that consists of batches of delete operations and insert operations, with separate batches for each table. Each batch of delete operations and insert operations on a table are applied via a Db2 Warehouse External Table. The default database encoding for a Db2 Warehouse database is UTF-8, and Db2 Warehouse requires the encoding of all data in an external table be UTF-8 or Latin-9. The character set for a graphic or vargraphic column is always UTF-16BE.
Problem conclusion
Upgrading to IBM Data Replication CDC for Db2 11.4.0.2-5528 resolves the issue.
Temporary fix
Comments
APAR Information
APAR number
JR62021
Reported component name
IS CDC DB2 LUW
Reported component ID
5725E30DL
Reported release
B40
Status
CLOSED PER
PE
NoPE
HIPER
NoHIPER
Special Attention
NoSpecatt / Xsystem
Submitted date
2020-02-19
Closed date
2020-02-26
Last modified date
2020-02-26
APAR is sysrouted FROM one or more of the following:
APAR is sysrouted TO one or more of the following:
Fix information
Fixed component name
IS CDC DB2 LUW
Fixed component ID
5725E30DL
Applicable component levels
[{"Business Unit":{"code":"BU059","label":"IBM Software w\/o TPS"},"Product":{"code":"SSTRGZ","label":"InfoSphere Data Replication"},"Component":"","ARM Category":[],"Platform":[{"code":"PF025","label":"Platform Independent"}],"Version":"B40","Edition":"","Line of Business":{"code":"LOB10","label":"Data and AI"}}]
Document Information
Modified date:
27 March 2020