ERROR OGG-01028 Formatting error

昨天遇到一个ogg的报错。

由于客户保密信息,源报错不能取出,下面的报错来源于网络

2013-01-29 14:23:17  ERROR   OGG-01028  Formatting error on: table name 000.TBCONTRACTBALANCE, rowid AAAMb2AB+AABp6KAAj, XID 33.22.36594, position (Seqno 878, RBA 1170383260). Invalid numeric data detected. Error converting numeric from Oracle to ASCII on column RENTMOENY, raw length 1, raw data: 105C41A0: 00 |.|.
 
2013-02-22 10:55:54  ERROR   OGG-01028  Oracle GoldenGate Capture for Oracle, exta.prm:  Formatting error on: table name 000.TBCONTRACTBALANCE, rowid AAAMb2AB+AABp6vAA4, XID 6.26.49261, position (Seqno 1348, RBA 382752208). Invalid numeric data detected. Error converting numeric from Oracle to ASCII on column RENTMOENY, raw length 1, raw data: 105C41A0: 00 |.|.
2013-02-22 10:55:54  ERROR   OGG-01668  Oracle GoldenGate Capture for Oracle, exta.prm:  PROCESS ABENDING.
出现这种情况后,使用logdump定义到该ext进程抽取的rba处都是提示坏的记录
查询mos上说是一个bug,跟表使用lob字段有关。

Extract was misparsing the LOB marker record causing the false error. Issue was initially fixed in OGG bug 18803324

Fix in bug 18803324 was later Superseded in bug 19624524
官方给的解决方法是打补丁升级到11.2.1.0.28以后

Issue has been fixed in Bug 19624524. The fix is available in OGG version 11.2.1.0.28+

and 12.1.2.1.2+

由于其他原因升级不能立即就绪,但也不能让进程停下。

网络上的一个解决方法是跳过这个记录,具体做法是

1.跳过这条需要同步的记录

2.修改检查点

3.排除该表后再进行初始化,从新同步这张表,

以上方法在后面可能还会发生同样的问题。

4.TRANLOGOPTIONS _INFINITYTOZERO


但是我这里rba要跳的话进程中其他表都要跳,影响很大,并且使用logdump找到正常的rba也很难,表比较大重新初始化也很困难,所以决定采用如下方式

1.再进程中取消该表的map

2.开启进程

3.待进程正常走30分到一小时后,恢复map

4.手动同步源端和目标端的数据

你可能感兴趣的:(ogg)