GoldenGate Integrated Replicat CDR UPDATEROWEXIST USEMAX Not Working on Table with LOB column (Doc ID 1961129.1)

Last updated on JULY 17, 2017

Applies to:

Oracle GoldenGate - Version 12.1.2.1.0 and later
Information in this document applies to any platform.

Symptoms

We understand that the LOB column cannot be used for comparison in CDR.  But when using integrated replicat on table with LOB column (even not for comparison), it ignores the update.  Classic extract applies the update with CDR correctly.

e.g.,

map SCOTT.ATTRIBUTE1, target scott.attribute1,
COMPARECOLS (ON UPDATE KEYINCLUDING (last_dml), ON DELETE KEYINCLUDING (last_dml)),
RESOLVECONFLICT (UPDATEROWEXISTS, (DEFAULT, USEMAX (last_dml))),
RESOLVECONFLICT (INSERTROWEXISTS, (DEFAULT, USEMAX (last_dml))),
RESOLVECONFLICT (DELETEROWEXISTS, (DEFAULT, IGNORE)),
RESOLVECONFLICT (UPDATEROWMISSING, (DEFAULT, OVERWRITE)),
RESOLVECONFLICT (DELETEROWMISSING, (DEFAULT, DISCARD));

SQL> desc attribute1
Name Null? Type
----------------------------------------- -------- ----------------------------
SERVICE_ID NOT NULL VARCHAR2(80)
NAME NOT NULL VARCHAR2(255)
GROUP_NAME NOT NULL VARCHAR2(255)
VALUE VARCHAR2(4000)
LARGE_VALUE BLOB
S_VALUE BLOB
LAST_DML TIMESTAMP(6)

 

first 3 columns are PK columns.

When the target last_dml is earlier than the value in update from source, the update should be applied.  It was applied by classic replicat, but not by integrated replicat.

 

Cause

Sign In with your My Oracle Support account

Don't have a My Oracle Support account? Click to get started

My Oracle Support provides customers with access to over a
Million Knowledge Articles and hundreds of Community platforms