How to recover from an OGG-01028 Incompatible Record if the trail is not corrupt (Doc ID 1507462.1)
Oracle GoldenGate - Version 9.5_EA and later
Information in this document applies to any platform.
GOAL
To recover from error: OGG-01028 Incompatible record in /ggtrail/GGODSCF/dirdat/cf000325, rba 19018 (getting header).
when it is known that the trail file is intact.
This applies to both extract data pumps and replicats
FIX
If a trail is not corrupt, a pump or replicat can be restarted by noting the point of failure (trail number and RBA) indicated in the report and discard file. Please do not attempt this if you are not familiar with reading these reports.
This should be done on transaction boundaries or with RESTARTCOLLISIONS enabled. If you do not understand this, do not do this yourself; please have support assist you.
>logdump
logdump> log to mycase.txt
logdump> open (/ggtrail/GGODSCF/dirdat/cf000325) <<<--- the trail in the report
logdump> ghdr on
logdump> pos (RBA 19018) <<<--- the RBA in the report
logdump> n
this will give you a bad header message
logdump> sfh prev
this gives you the header of the previous record start,write down the RBA value <<<--- If it‘s the transaction boundary or only DML in transaction
logdump> count
if this finishes Ok and gives you a count of tables and records, the trail is OK and you can use the RBA we saved for the alter later
the trail is known to be undamaged
if this does not finish with the count, you have a bad trail and must use another recovery method, contact support.
logdump> exit
You now have a history of what you did in file mycase.txt and a written record of the RBA to use to ALTER the extract data pump or replicat
ggsci> alter extract xxx, extseqno < the existing sequence number>, extrba
ggsci> start
OGG-01028 Incompatible Record解决办法