A fix is available
APAR status
Closed as program error.
Error description
Qapply ABENDS0C4 is possible when Q Apply performs a query of SYSIBM.SYSTABLES and a deadlock takes place.
Local fix
Problem summary
**************************************************************** * USERS AFFECTED: 1- All SQL Capture customers. * * 2- Q Apply, Q Capture * * 3- All SQL Apply customers. * * 4- ASNTDIFF * * 5- Q Capture - Search Condition users * * 6- Any user that issues a request to print * * send queue status and uses a queue (or * * replication queue map) that does not exist. * * 7- Q Apply * * 8- Q Capture users * **************************************************************** * PROBLEM DESCRIPTION: 1- SQL Capture converts the new column * * name to uppercase when it executes * * ALTER TABLE RENAME COLUMN statements * * for CD tables. * * 2- Q Replication programs querying * * SYSIBM.SYSTABLES catalog for * * determining table structure do not * * handle deadlocks correctly. This may * * lead to internal errors or 0C4 abend. * * 3- SQL Apply keeps dumping error * * message to joblog/log/applytrail after * * the error condition is corrected * * 4- ASNTDIFF issues an error messages * * ASN4031E when RANGECOL contains lower * * case column names. * * 5- The IS NULL clause of a search * * condition is not processed correctly * * 6- A change was recently put in to * * allow the user to request the status * * of a queue by using the replication * * queue map name instead of the send * * queue name, and still print the * * correct send queue and map name. * * Because of a missing check for a NULL * * pointer, if the given name is not a * * send queue or a queue map, this will * * result in a dump of the admin thread. * * Capture will continue to run, but the * * admin thread will not. At this point, * * the user will have to stop and restart * * capture. * * 7- ASN7618I message contains a wrong * * SQLCODE when target is the stored * * procedure. * * 8- The new Q Capture in-memory * * evaluator of search/change conditions * * does not support all SQL functionality * * that can be expressed. * **************************************************************** * RECOMMENDATION: * **************************************************************** 1- SQL Capture detects ALTER TABLE RENAME COLUMN operations for registered source tables and executes ALTER TABLE RENAME COLUMN statements to rename corresponding before-image and/or after-image columns in CD tables. SQL Capture converts the new column name to uppercase when it executes ALTER TABLE RENAME COLUMN statements for CD tables. 2- Q Apply and Q Capture programs query SYSIBM.SYSTABLES catalog for determining table structure, such as when starting a subscription or replicating table alters. If there are deadlocks or lock timeouts while querying SYSTABLES, these do not get handled correctly leading to reporting of internal errors or it may lead to an 0C4 abend. 3- SQL Apply does not clean up the internal buffer holding error information properly 4- ASNTDIFF failed to support the comparison of two tables with lowercase column names. 5- Additional logic is required to correctly handle and evaluate an IS NULL clause 6- Due to a missing NULL pointer check, the conversion of message ASN0668I can result in a SEGV for the admin thread. 7- When a subscription's TARGET_TYPE is set to 5, Q Apply does not fill meaningful values in SQLCODE, SQLSTATE and Reason Code in ASN7618I. 8- Users of search/change conditions in 10.2.1 might encounter unexpected errors before falling back to database evaluation if a search/change condition fails to validate for in-memory evaluation.
Problem conclusion
1- SQL Capture will preserve the case of the new column name when it executes ALTER TABLE RENAME COLUMN statements for CD tables. 2- Q Replication programs now handle deadlocks correctly when querying SYSIBM.SYSTABLES catalog tables. 3- Change SQL Apply to reset the internal buffer holding error information at beginning of each Apply cycle 4- The problem is fixed. 5- The problem is resolved 6- The check for the NULL pointer has been added, and the problem will not occur again. 7- The problem is fixed. 8- The commandline parm IN_MEM_FILTER_EVAL=N allows users to avoid in-memory evaluation of search/change conditions.
Temporary fix
Comments
APAR Information
APAR number
PI39742
Reported component name
WS REPLICATION
Reported component ID
5655L8800
Reported release
A21
Status
CLOSED PER
PE
NoPE
HIPER
NoHIPER
Special Attention
NoSpecatt
Submitted date
2015-04-23
Closed date
2015-05-21
Last modified date
2015-06-01
APAR is sysrouted FROM one or more of the following:
APAR is sysrouted TO one or more of the following:
UI27857 UI27858 UI27859 UI27860
Modules/Macros
ASNAAPP ASNACMD ASNACMP ASNADMSP ASNAFET ASNAISO ASNAMAN ASNAPPLY ASNAPRS ASNAWPN ASNCAP ASNCCMD ASNCDA ASNCLPAP ASNCLPCL ASNCLPCM ASNCLPCO ASNCLPMS ASNCLPQA ASNMCMD ASNMON ASNMONIT ASNQACMD ASNQAHKT ASNQAPP ASNQAROW ASNQCAP ASNQCCMD ASNQDEP ASNQEXRP ASNQMFMT ASNQXFMT ASNQ1021 ASNRBASE ASNSQLCZ ASNTDIFF ASNTDSP ASNTRC ASN2BASE ASN2SQLZ
Fix information
Fixed component name
WS REPLICATION
Fixed component ID
5655L8800
Applicable component levels
RA21 PSY UI27857
UP15/05/30 P F505
RA24 PSY UI27858
UP15/05/30 P F505
RA25 PSY UI27859
UP15/05/30 P F505
RA26 PSY UI27860
UP15/05/30 P F505
Fix is available
Select the PTF appropriate for your component level. You will be required to sign in. Distribution on physical media is not available in all countries.
[{"Business Unit":{"code":"BU059","label":"IBM Software w\/o TPS"},"Product":{"code":"SSDP5R","label":"InfoSphere Replication Server"},"Component":"","ARM Category":[],"Platform":[{"code":"PF025","label":"Platform Independent"}],"Version":"A21","Edition":"","Line of Business":{"code":"LOB10","label":"Data and AI"}}]
Document Information
Modified date:
01 June 2015