Informix - Problem description
Problem IT00258 | Status: Closed |
ONLINE-CDC WILL GENERATE PARTIAL RECORDS IF YOUR TABLE HAS A LAR GE ROW SIZE. ONLINE-CDC LIMITS IFX_LO_READ() TO ONLY FETCH 32000 | |
product: | |
INFORMIX SERVER / 5725A3900 / C10 - IDS 12.10 | |
Problem description: | |
If your row size is over 32000 bytes. ONLINE-CDC will split the CDC record being return, limiting ifx_lo_read() to fetch only 32000 bytes and the application developer must recognize that this is a partial record and fetch the rest of the record with another call to ifx_lo_read(). This behavior is not documented and appears to be a design issue with the Informix implementation of the CDC API. The only way a developer would know to do this is to reference the example provided in the cdcapi.ec | |
Problem Summary: | |
**************************************************************** * USERS AFFECTED: * * Users of the Informix log capture API (CDC) * **************************************************************** * PROBLEM DESCRIPTION: * * See Error Description * **************************************************************** * RECOMMENDATION: * * Refer to the cdcapi.ec sample program in the * * $INFORMIXDIR/demo/cdc directory. Informix versions * * 12.10.xC4 and later also remove an internal constraint that * * in this case limited the amount of data returned in a single * * read call to approximately 32 KB. * **************************************************************** | |
Local Fix: | |
Review cdcapi.ec and when a partial record is retrieved you must retrieve the rest of the record with another call to ifx_lo_read() | |
Solution | |
Your application cannot depend on a specific number of records being returned by smart large object read calls. The number of CDC records that are returned in a read call is not predictable and might not be an integral number. If a read call returns only part of a CDC record, the next read call returns more data for that record. Your application must merge the parts of the record that are returned in multiple read calls. The Change Data Capture sample program provides examples of merging parts of records. | |
Workaround | |
not known / see Local fix | |
Timestamps | |
Date - problem reported : Date - problem closed : Date - last modified : | 12.03.2014 07.11.2014 07.11.2014 |
Problem solved at the following versions (IBM BugInfos) | |
12.10.xC4 | |
Problem solved according to the fixlist(s) of the following version(s) | |
12.10.xC4 | |
12.10.xC5 | |
12.10.xC5.W1 |