2

I have GoldenGate for Oracle(123015)'s Replicat process set up to get changes from the Oracle 12c database.

I'm able to get all INSERT/UPDATE/DELETE changes to the trail files. However, during the UPDATE operation, the After section of the record in the trail file only includes the columns that have been modified.

According to the documentation, if

  1. FORCE LOGGING and SUPPLEMENTAL LOG DATA ALL COLUMNS is enabled on the database,
  2. The EXTRACT param file in GoldenGate includes parameters LOGALLSUPCOLS and UPDATERECORDFORMAT FULL,

the AFTER section of the record should contain all columns, but it doesn't :(

Harry
  • 43
  • 8

4 Answers4

0

To not rely on the documentation. Make some your own tests. Please check the full explanation what exactly GoldenGate 12.3 Extract process writes to the trail.

Adam Leszczyński
  • 1,079
  • 7
  • 13
  • I went through the link and tried all the cases, still not able to get all columns in the "After" section. Anyways, I made it worked somehow by comparing the keys/values between "before" and "after" section. – Harry May 08 '19 at 22:30
0

You need to use GETUPDATEBEFORES to get the before image of the update records:

https://docs.oracle.com/en/middleware/goldengate/core/19.1/reference/getupdatebefores-ignoreupdatebefores.html#GUID-3CA51C08-8D8C-4CD5-AEB2-E0DFEF1B6BF7

DBASolved
  • 51
  • 4
0

On the pluggable database just need add supplemental logging for all columns

ALTER PLUGGABLE DATABASE ORCLPDB ADD SUPPLEMENTAL LOG DATA (ALL) COLUMNS;

0

maybe you should use:

TABLE hq.acct, FETCHCOLS (*);

Enables the fetching of column values from the source database when the values are not in the transaction record.