ORA-1407错误分析及追踪

1 repb10进程异常,如下

GGSCI (hostBB) 31> info repb10


REPLICAT   repb10  Last Started 2021-03-05 08:39   Status ABENDED

Checkpoint Lag       00:00:04 (updated 15:02:55 ago)

Log Read Checkpoint  File ./dirdat/cc149123

                     2021-03-05 01:43:46.001414  RBA 297156732


2   查看报错信息

2021-03-05 17:14:02  WARNING OGG-00869  OCI Error ORA-01407: cannot update ("fdpuserA"."E_MP_AAA"."ID") 

to NULL (status = 1407). UPDATE /*+ RESTRICT_ALL_REF_CONS */ "fdpuserA"."E_MP_AAA" SET "ID" = :a3,"

DATA_DATE" = :a4,"DATA_TYPE" = :a5,"DATA_POINT_FLAG" = :a6,"DATA_WHOLE_FLAG" = :a7,"P1" = :a8,

.....................................

"P83" = :a90,"P84" = :a91,"P85" = :a92,"P86" = :a93,"P87" = :a94,"P88" = :a95,"P89" = :a96,"P90" = :a97,

"P91" = :a98,"P92" = :a99,"P93" = :a100,"P94" = :a101,"P95" = :a102,"P96" = :a103,

"SOURCE_CHANGE_TIME" = :a104,"TARGET_WRITE_TIME" = :a105 WHERE "ID" = :b0 AND 

"DATA_DATE" = :b1 AND "DATA_TYPE" = :b2.


2021-03-05 17:14:02  WARNING OGG-01004  Aborted grouped transaction on 'fdpuserA.E_MP_AAA',

 Database error 1407 (OCI Error ORA-01407: cannot update ("fdpuserA"."E_MP_AAA"."ID") to NULL (status = 1407). 

UPDATE /*+ RESTRICT_ALL_REF_CONS */ "fdpuserA"."E_MP_AAA" SET "ID" = :a3,"DATA_DATE" = :a4,"DATA_TYPE" =

 :a5,"DATA_POINT_FLAG" = :a6,"DATA_WHOLE_FLAG" = :a7,"P1" = :a8,"P2" = :a9,"P3" = :a10,"P4" = :a11,"

.。。。。。。。。。。。。。。。。。

P95" = :a102,"P96" = :a103,"SOURCE_CHANGE_TIME" = :a104,"TARGET_WRITE_TIME" = :a105 

WHERE "ID" = :b0 AND "DATA_DATE" = :b1 AND "DATA_TYPE" = :b2).


2021-03-05 17:14:02  WARNING OGG-01003  Repositioning to rba 23738948 in seqno 149124.


2021-03-05 17:14:06  WARNING OGG-01154  SQL error 1407 mapping CSMuserB.E_MP_AAA to 

fdpuserA.E_MP_AAA OCI Error ORA-01407: cannot update ("fdpuserA"."E_MP_AAA"."ID") to NULL (status = 1407). 

UPDATE /*+ RESTRICT_ALL_REF_CONS */ "fdpuserA"."E_MP_AAA" SET "ID" = :a3,"DATA_DATE" = :a4,

"DATA_TYPE" = :a5,"DATA_POINT_FLAG" = :a6,"DATA_WHOLE_FLAG" = :a7,"P1" = :a8,"P2" = :a9,"P3" = :a10,

..................................................................

"P93" = :a100,"P94" = :a101,"P95" = :a102,"P96" = :a103,"SOURCE_CHANGE_TIME" = :a104,

"TARGET_WRITE_TIME" = :a105 WHERE "ID" = :b0 AND "DATA_DATE" = :b1 AND "DATA_TYPE" = :b2.


2021-03-05 17:14:06  WARNING OGG-01003  Repositioning to rba 23738948 in seqno 149124.


Source Context :

  SourceModule            : [er.errors]

  SourceID                : [/scratch/pradshar/view_storage/pradshar_pse_15852019/oggcore/OpenSys/src/app/er/errors.cpp]

  SourceFunction          : [take_rep_err_action]

  SourceLine              : [623]

  ThreadBacktrace         : [8] elements

                          : [/goldengate/libgglog.so(CMessageContext::AddThreadContext()+0x1e) [0x7f388b8d471e]]

                          : [/goldengate/libgglog.so(CMessageFactory::CreateMessage(CSourceContext*, unsigned int, ...)+0x2cc) [0x7f388b8cd6bc]]

                          : [/goldengate/libgglog.so(_MSG_ERR_MAP_TO_TANDEM_FAILED(CSourceContext*, ggs::gglib::ggapp::CQualDBObjName<(DBObjType)1> const&, ggs::gglib::ggapp::CQualDBObjName<(DBObjType)1> const&, CMessageFactory::MessageDisposition)+0x53) [0x7f388b8c9581]]

                          : [/goldengate/replicat(take_rep_err_action(short, int, char const*, extr_ptr_def*, __std_rec_hdr*, char*, file_def*, bool)+0xdac) [0x521a80]]

                          : [/goldengate/replicat(process_extract_loop()+0x2388) [0x53ad18]]

                          : [/goldengate/replicat(main+0x732) [0x54cbd2]]

                          : [/lib64/libc.so.6(__libc_start_main+0xf5) [0x7f3885ca63d5]]

                          : [/goldengate/replicat(__gxx_personality_v0+0x31a) [0x4c0c6a]]


2021-03-05 17:14:07  ERROR   OGG-01296  Error mapping from CSMuserB.E_MP_AAA to fdpuserA.E_MP_AAA.


3 根据报错信息,查看执行的SQL

UPDATE /*+ RESTRICT_ALL_REF_CONS */ "fdpuserA"."E_MP_AAA"

   SET "ID"                 = :a3,

       "DATA_DATE"          = :a4,

       "DATA_TYPE"          = :a5,

       "DATA_POINT_FLAG"    = :a6,

       "DATA_WHOLE_FLAG"    = :a7,

       "P1"                 = :a8,

       。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。

       "P96"                = :a103,

       "SOURCE_CHANGE_TIME" = :a104,

       "TARGET_WRITE_TIME"  = :a105

 WHERE "ID" = :b0

   AND "DATA_DATE" = :b1

   AND "DATA_TYPE" = :b2.


4 根据OGG丢弃discard的文件,查看绑定变量的值,会发现一开始ID,DATA_DATE,DATA_TYPE 是有值的,

但紧跟着就没有值了

Current time: 2021-03-05 16:57:47

Discarded record from action ABEND on error 1407


OCI Error ORA-01407: cannot update ("fdpuserA"."E_MP_AAA"."ID") to NULL (status = 1407). 

UPDATE /*+ RESTRICT_ALL_REF_CONS */ "fdpuserA"."E_MP_AAA" SET "ID" = :a3,"DATA_DATE" = :a4,

"DATA_TYPE" = :a5,"DATA_POINT_FLAG" = :a6,"DATA_WHOLE_FLAG" = :a7,"P1" = :a8,"P2" = :a9,"P3" = :a10,

".................

Aborting transaction on ./dirdat/cj/yd beginning at seqno 149124 rba 23738948

                         error at seqno 149124 rba 36180309

Problem replicating CSMuserB.E_MP_AAA to fdpuserA.E_MP_AAA

Mapping problem with compressed key update record (target format)...

*

ID = 49944939                            --ID的值为 49944939

DATA_DATE = 2021-03-05 00:00:00

DATA_TYPE = 1

ID =                                --为什么会再次出现ID值,并且获取不到ID的值

DATA_DATE = 

DATA_TYPE = 

DATA_POINT_FLAG = NULL

DATA_WHOLE_FLAG = NULL

P1 = NULL

………………………………………………

P96 = NULL

SOURCE_CHANGE_TIME = 2021-03-05 01:43:48

TARGET_WRITE_TIME = 2021-03-05 16:57:47  


5 开启trace,发现SQL_ID为2txncyg58q4wk的,ID值无法获取,故为空,

SQL执行同时报错ORA-1407,但where条件的变量值却是可以获取到,如下:

 Bind#103

  oacdty=01 mxl=32(24) mxlc=00 mal=00 scl=00 pre=00

  oacflg=21 fl2=1000000 frm=01 csi=873 siz=0 off=1472

  kxsbbbfp=7f11c7cd6278  bln=32  avl=08  flg=01

  value="49944939"

 Bind#104

  oacdty=01 mxl=128(57) mxlc=00 mal=00 scl=00 pre=00

  oacflg=21 fl2=1000000 frm=01 csi=873 siz=0 off=1504

  kxsbbbfp=7f11c7cd6298  bln=128  avl=19  flg=01

  value="2021-03-05 00:00:00"

 Bind#105

  oacdty=01 mxl=32(03) mxlc=00 mal=00 scl=00 pre=00

  oacflg=21 fl2=1000000 frm=01 csi=873 siz=0 off=1632

  kxsbbbfp=7f11c7cd6318  bln=32  avl=01  flg=01

  value="1"

  


=====================

PARSING IN CURSOR #139714343305896 len=1523 dep=0 uid=108 oct=6 lid=108 tim=1614938748913365 hv=3398112146 ad='2814529cf0' sqlid='2txncyg58q4wk'

UPDATE /*+ RESTRICT_ALL_REF_CONS */ "fdpuserA"."E_MP_AAA" SET "ID" = :a3,"DATA_DATE" = :a4,"DATA_TYPE" = :a5,"DATA_POINT_FLAG" = :a6,

"DATA_WHOLE_FLAG" = :a7,"P1" = :a8,"P2" = :a9,"P3" = :a10,"P4" = :a11,"P5" = :a12,"P6" = :a13,"P7" = :a14,"P8" = :a15,"P9" = :a16,"P10" = :a17,

....................

"P88" = :a95,"P89" = :a96,"P90" = :a97,"P91" = :a98,"P92" = :a99,"P93" = :a100,"P94" = :a101,"P95" = :a102,"P96" = :a103,"SOURCE_CHANGE_TIME" = :a104,

"TARGET_WRITE_TIME" = :a105 WHERE "ID" = :b0 AND "DATA_DATE" = :b1 AND "DATA_TYPE" = :b2

END OF STMT

PARSE #139714343305896:c=699,e=699,p=0,cr=0,cu=0,mis=1,r=0,dep=0,og=1,plh=0,tim=1614938748913364

WAIT #139714343305896: nam='library cache lock' ela= 196 handle address=169351999520 lock address=172137777856 100*mode+namespace=12250341945114626 obj#=0 tim=1614938748914409

WAIT #139714343305896: nam='library cache pin' ela= 166 handle address=169351999520 pin address=172137777600 100*mode+namespace=12250341945114626 obj#=0 tim=1614938748914640

BINDS #139714343305896:

 Bind#0

  oacdty=01 mxl=32(00) mxlc=00 mal=00 scl=00 pre=00

  oacflg=21 fl2=1000000 frm=01 csi=873 siz=3984 off=0

  kxsbbbfp=7f11c768b210  bln=32  avl=00  flg=05

 Bind#1

  oacdty=01 mxl=32(00) mxlc=00 mal=00 scl=00 pre=00

  oacflg=21 fl2=1000000 frm=01 csi=873 siz=0 off=32

  kxsbbbfp=7f11c768b230  bln=32  avl=00  flg=01

 Bind#2

  oacdty=01 mxl=32(00) mxlc=00 mal=00 scl=00 pre=00

  oacflg=21 fl2=1000000 frm=01 csi=873 siz=0 off=64

  kxsbbbfp=7f11c768b250  bln=32  avl=00  flg=01

 Bind#3

  oacdty=01 mxl=32(00) mxlc=00 mal=00 scl=00 pre=00

  oacflg=21 fl2=1000000 frm=01 csi=873 siz=0 off=96

  kxsbbbfp=7f11c768b270  bln=32  avl=00  flg=01

 Bind#4

  oacdty=01 mxl=2000(288) mxlc=00 mal=00 scl=00 pre=00

  oacflg=03 fl2=1000000 frm=01 csi=873 siz=0 off=128

  kxsbbbfp=7f11c768b290  bln=2000  avl=00  flg=01

 Bind#5

  oacdty=01 mxl=32(00) mxlc=00 mal=00 scl=00 pre=00

  oacflg=21 fl2=1000000 frm=01 csi=873 siz=0 off=2128

  kxsbbbfp=7f11c768ba60  bln=32  avl=00  flg=01

 Bind#6

  oacdty=01 mxl=32(00) mxlc=00 mal=00 scl=00 pre=00

  oacflg=21 fl2=1000000 frm=01 csi=873 siz=0 off=2160

  kxsbbbfp=7f11c768ba80  bln=32  avl=00  flg=01

………………………………………………

Bind#100

  oacdty=01 mxl=32(00) mxlc=00 mal=00 scl=00 pre=00

  oacflg=21 fl2=1000000 frm=01 csi=873 siz=0 off=1184

  kxsbbbfp=7f11c7cd6158  bln=32  avl=00  flg=01

 Bind#101

  oacdty=01 mxl=128(57) mxlc=00 mal=00 scl=00 pre=00

  oacflg=21 fl2=1000000 frm=01 csi=873 siz=0 off=1216

  kxsbbbfp=7f11c7cd6178  bln=128  avl=19  flg=01

  value="2021-03-05 01:43:48"

 Bind#102

  oacdty=01 mxl=128(57) mxlc=00 mal=00 scl=00 pre=00

  oacflg=21 fl2=1000000 frm=01 csi=873 siz=0 off=1344

  kxsbbbfp=7f11c7cd61f8  bln=128  avl=19  flg=01

  value="2021-03-05 18:05:48"

 Bind#103

  oacdty=01 mxl=32(24) mxlc=00 mal=00 scl=00 pre=00

  oacflg=21 fl2=1000000 frm=01 csi=873 siz=0 off=1472

  kxsbbbfp=7f11c7cd6278  bln=32  avl=08  flg=01

  value="49944939"

 Bind#104

  oacdty=01 mxl=128(57) mxlc=00 mal=00 scl=00 pre=00

  oacflg=21 fl2=1000000 frm=01 csi=873 siz=0 off=1504

  kxsbbbfp=7f11c7cd6298  bln=128  avl=19  flg=01

  value="2021-03-05 00:00:00"

 Bind#105

  oacdty=01 mxl=32(03) mxlc=00 mal=00 scl=00 pre=00

  oacflg=21 fl2=1000000 frm=01 csi=873 siz=0 off=1632

  kxsbbbfp=7f11c7cd6318  bln=32  avl=01  flg=01

  value="1"

WAIT #139714343305896: nam='gc current grant 2-way' ela= 124 p1=1645 p2=379484 p3=33554454 obj#=0 tim=1614938748920783

EXEC #139714343305896:c=7468,e=7829,p=0,cr=4,cu=12,mis=1,r=0,dep=0,og=1,plh=823891787,tim=1614938748921256

ERROR #139714343305896:err=1407 tim=1614938748921279


看表的附加日志,附加日志为主键列:


GGSCI (hosta) 4> info trandata CSMuserB.E_MP_AAA


Logging of supplemental redo log data is enabled for table CSMuserB.E_MP_AAA.


Columns supplementally logged for table CSMuserB.E_MP_AAA: DATA_DATE, DATA_TYPE, ID.


查看表的索引

INDEX_OWNER   INDEX_NAME             TABLE_OWNER        TABLE_NAME          COLUMN_NAME  COLUMN_POSITION STATUS

------------- ---------------------- ------------------ ------------------- ------------ --------------- ------

CSMuserB    PK_E_MP_AAA    CSMuserB         E_MP_AAA    ID                         1 N/A   

CSMuserB    PK_E_MP_AAA    CSMuserB         E_MP_AAA    DATA_DATE                  2 N/A   

CSMuserB    PK_E_MP_AAA    CSMuserB         E_MP_AAA    DATA_TYPE                  3 N/A   


7 使用logdump,查看ID值为49944939 的trail文件,将49944939转换为16进制的值为:2FA196B,

经过查询,总算找到ID值为49944939的数据,发现更新后的主键列确实为空。

Logdump 969 >n

___________________________________________________________________ 

Hdr-Ind    :     E  (x45)     Partition  :     .  (x04)  

UndoFlag   :     .  (x00)     BeforeAfter:     B  (x42)  

RecLength  :  1419  (x058b)   IO Time    : 2021/03/05 01:43:48.000.033   

IOType     :    15  (x0f)     OrigNode   :   255  (xff) 

TransInd   :     .  (x01)     FormatType :     R  (x52) 

SyskeyLen  :     0  (x00)     Incomplete :     .  (x00) 

AuditRBA   :     473448       AuditPos   : 900726448 

Continued  :     N  (x00)     RecCount   :     1  (x01) 


2021/03/05 01:43:48.000.033 FieldComp            Len  1419 RBA 36178784 

Name: CSMuserB.E_MP_AAA 

Before Image:                                             Partition 4   G  m   

 0000 000a 0000 0000 0000 02fa 196b 0001 0015 0000 | .............k......  

 3230 3231 2d30 332d 3035 3a30 303a 3030 3a30 3000 | 2021-03-05:00:00:00.  

 0200 0a00 0000 0000 0000 0000 0100 0300 0aff ff00 | ....................  

 0000 0000 0000 0000 0400 04ff ff00 0000 0500 0aff | ....................  

 ff00 0000 0000 0000 0000 0600 0aff ff00 0000 0000 | ....................  

 0000 0000 0700 0aff ff00 0000 0000 0000 0000 0800 | ....................  

 0aff ff00 0000 0000 0000 0000 0900 0aff ff00 0000 | ....................  

Column     0 (x0000), Len    10 (x000a)  

  0000 0000 0000 02fa 196b                          | .........k  

Column     1 (x0001), Len    21 (x0015)  

  0000 3230 3231 2d30 332d 3035 3a30 303a 3030 3a30 | ..2021-03-05:00:00:0  

 30                                                | 0  

Column     2 (x0002), Len    10 (x000a)  

 0000 0000 0000 0000 0001                          | ..........  

Column     3 (x0003), Len    10 (x000a)  

 ffff 0000 0000 0000 0000                          | ..........  

Column     4 (x0004), Len     4 (x0004)  

 ffff 0000                                         | ....  

Column     5 (x0005), Len    10 (x000a)  

 ffff 0000 0000 0000 0000                          | ..........  

Column     6 (x0006), Len    10 (x000a)  

 ffff 0000 0000 0000 0000                          | ..........  

…………………………………………………………..

Column    99 (x0063), Len    10 (x000a)  

 ffff 0000 0000 0000 0000                          | ..........  

Column   100 (x0064), Len    10 (x000a)  

 ffff 0000 0000 0000 0000                          | ..........  

  

GGS tokens: 

TokenID x52 'R' ORAROWID         Info x00  Length   20 

 4141 5050 4d5a 4150 5741 4144 7361 7441 4544 0001 | AAPPMZAPWAADsatAED..  

   

Logdump 970 >n

___________________________________________________________________ 

Hdr-Ind    :     E  (x45)     Partition  :     .  (x04)  

UndoFlag   :     .  (x00)     BeforeAfter:     A  (x41)  

RecLength  :  1474  (x05c2)   IO Time    : 2021/03/05 01:43:48.001.039   

IOType     :   115  (x73)     OrigNode   :   255  (xff) 

TransInd   :     .  (x01)     FormatType :     R  (x52) 

SyskeyLen  :     0  (x00)     Incomplete :     .  (x00) 

AuditRBA   :     473448       AuditPos   : 900726448 

Continued  :     N  (x00)     RecCount   :     1  (x01) 


2021/03/05 01:43:48.001.039 GGSPKUpdate          Len  1474 RBA 36180309 

Name: CSMuserB.E_MP_AAA 

After  Image:                                             Partition 4   G  m   

 0035 0000 000a 0000 0000 0000 02fa 196b 0001 0015 | .5.............k....  

 0000 3230 3231 2d30 332d 3035 3a30 303a 3030 3a30 | ..2021-03-05:00:00:0  

 3000 0200 0a00 0000 0000 0000 0000 0100 0000 0aff | 0...................  

 ff00 0000 0000 0000 0000 0100 15ff ff31 3930 302d | ...............1900-  

 3031 2d30 313a 3030 3a30 303a 3030 0002 000a ffff | 01-01:00:00:00......  

 0000 0000 0000 0000 0003 000a ffff 0000 0000 0000 | ....................  

 0000 0004 0004 ffff 0000 0005 000a ffff 0000 0000 | ....................  

Before Image          Len    55 (x00000037) 

KeyLen    53 (x00000035) 

KeyCol     0 (x0000), Len    10 (x000a)  

 0000 0000 0000 02fa 196b                          | .........k  

KeyCol     1 (x0001), Len    21 (x0015)  

 0000 3230 3231 2d30 332d 3035 3a30 303a 3030 3a30 | ..2021-03-05:00:00:0  

 30                                                | 0  

KeyCol     2 (x0002), Len    10 (x000a)  

 0000 0000 0000 0000 0001                          | ..........  


After Image           Len  1419 (x0000058b) 

Column     0 (x0000), Len    10 (x000a)  

 ffff 0000 0000 0000 0000                          | ..........    --更新后的值,发现为空,所以OGG报错ORA-1407

Column     1 (x0001), Len    21 (x0015)  

 ffff 3139 3030 2d30 312d 3031 3a30 303a 3030 3a30 | ..1900-01-01:00:00:0   --仔细看时间,发现时间也不对

 30                                                | 0  

Column     2 (x0002), Len    10 (x000a)  

 ffff 0000 0000 0000 0000                          | ..........  

Column     3 (x0003), Len    10 (x000a)  

 ffff 0000 0000 0000 0000                          | ..........  

Column     4 (x0004), Len     4 (x0004)  

 ffff 0000                                         | ....  

Column     5 (x0005), Len    10 (x000a)  

 ffff 0000 0000 0000 0000                          | ..........  

…………………………………………………………………. 

Column    99 (x0063), Len    10 (x000a)  

 ffff 0000 0000 0000 0000                          | ..........  

Column   100 (x0064), Len    10 (x000a)  

 ffff 0000 0000 0000 0000                          | ..........  

  

GGS tokens: 

TokenID x52 'R' ORAROWID         Info x00  Length   20 

 4141 5050 4d5a 4150 5741 4144 7361 7441 4544 0001 | AAPPMZAPWAADsatAED..  


8 根据ROWID查询对应的数据,在源端数据是有的,且主键不为空。

 SYS@hostA >select * from CSMuserB.E_MP_AAA where rowid='AAPPMZAPWAADsatAED';

  49944939 05-MAR-21             1               1 111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111      .0021     .0022      .0036       .0021

     .0022      .0022      .0022      .0021      .0022      .0021      .0021      .0021      .0022      .0022      .0022      .0022      .0021      .0022      .0022      .0022      .0022      .0022

     .0022      .0022      .0021      .0021      .0021      .0021      .0021       .002       .002       .002       .002       .002       .002       .002      .002        .002       .002      .0021

     .0021      .0031      .0015      .0015      .0015      .0046      .0028      .0015      .0015      .0015      .0015      .0015      .0015      .0015      .0015      .0015       .003      .0015

     .0015      .0015      .0015      .0015      .0015      .0015      .0015      .0015      .0015      .0015      .0015      .0015      .0015      .0015      .0015      .0015      .0015      .0015

     .0015      .0015       .002       .002       .002      .0034       .002       .002       .002       .002      .0021      .0021      .0021      .0021      .0021      .0021      .0021      .0021

     .0021      .0021


9  在目标端查询对应的数据:

select * from fdpuserA.E_MP_AAA a where a.id='49944939' and a.data_date=to_date('2021-03-05 00:00:00','yyyy-mm-dd hh24:mi:ss') and a.data_type=1;


SYS@hostB >/


               ID DATA_DATE           DATA_TYPE DATA_POINT_FLAG

----------------- ------------------ ---------- ---------------

      22000087144 04-MAR-21                   8               1


SYS@hostB>select * from fdpuserA.E_MP_AAA a where a.id='49944939' and a.data_date=to_date('2021-03-05 00:00:00','yyyy-mm-dd hh24:mi:ss') and a.data_type=1;


             

         49944939 05-MAR-21                   1               1 111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111      .0021      .0022      .0036      .0021      .0022      .0022      .0022      .0021      .0022      .0021      .0021      .0021

     .0022      .0022      .0022      .0022      .0021      .0022      .0022      .0022      .0022      .0022      .0022      .0022      .0021      .0021      .0021      .0021      .0021       .002       .002       .002       .002       .002       .002       .002       .002       .002       .002

     .0021      .0021      .0031      .0015      .0015      .0015      .0046      .0028      .0015      .0015      .0015      .0015      .0015      .0015      .0015      .0015      .0015       .003      .0015      .0015      .0015      .0015      .0015      .0015      .0015      .0015      .0015

     .0015      .0015      .0015      .0015      .0015      .0015      .0015      .0015      .0015      .0015      .0015      .0015       .002       .002      .002       .0034       .002       .002       .002       .002      .0021      .0021      .0021      .0021      .0021      .0021      .0021

     .0021      .0021      .0021 06-MAR-21          06-MAR-21


10 处理方法:OGG忽略此报错将相关事务应用完成后,停止OGG,将目标端的对应数据删除,并从源端将相关数据转换为SQL插入语句,重新插入到目标端。


总结:

     根据如上信息,源端有附加日志,且为主键列的值,源端和目标端都有数据,根据OGG的discard文件、追踪文件,trail文件,可以确定,OGG抽取进程将主键列的值,抽取为空,但由于主键列有不为空的约束,故最终导致OGG报ORA-1407错误。 根据此信息,认为应该时OGG源端抽取进程抽取的数据异常,导致的ORA-1407错误。




请使用浏览器的分享功能分享到微信等