Monday, 17 June 2013

Replicat abend issues

1. Issue
========

Replicat abended with the error

2013-06-17 17:08:45  ERROR   OGG-01163  Bad column length (7) specified for column COMM_NEED_FLG in table SIEBEL.S_SRV_REQ, maximum allowable length is 4.


2. Steps handled to solve.
==========================


>> -- Problemtic Record from the report file.


2013-06-17 17:08:45  ERROR   OGG-01163  Bad column length (7) specified for column COMM_NEED_FLG in table SIEBEL.S_SRV_REQ, maximum allowable length is 4.

***********************************************************************
*                   ** Run Time Statistics **                         *
***********************************************************************

Reading ./dirdat/PQ000364, current RBA 821565342, 26218 records

Report at 2013-06-17 17:08:45 (activity since 2013-06-17 17:06:59)

From Table SIEBEL.S_SRV_REQ to SIEBEL.S_SRV_REQ:
       #                   inserts:         0
       #                   updates:     26218
       #                   deletes:         0
       #                  discards:         0



Last log location read:
     FILE:      ./dirdat/PQ000364
     SEQNO:     364
     RBA:       821565342
     TIMESTAMP: 2013-06-16 01:33:00.838513
     EOF:       NO
     READERR:   0


>> -- Problemtic record from the logdump file.

logdump> open ./dirdat/PQ000364
logdump> ghdr on
logdump> detail on
logdump> detail data
logdump> ggstoken on
logdump> ggstoken detail
logdump> pos 821565342
logdump> n

==============================================================================
Hdr-Ind    :     E  (x45)     Partition  :     .  (x04)
UndoFlag   :     .  (x00)     BeforeAfter:     A  (x41)
RecLength  :  4127  (x101f)   IO Time    : 2013/06/16 01:33:00.838.513
IOType     :    15  (x0f)     OrigNode   :   255  (xff)
TransInd   :     .  (x01)     FormatType :     R  (x52)
SyskeyLen  :     0  (x00)     Incomplete :     .  (x00)
AuditRBA   :      13685       AuditPos   : 201126860
Continued  :     N  (x00)     RecCount   :     1  (x01)

2013/06/16 01:33:00.838.513 FieldComp            Len  4127 RBA 821565342
Name: SIEBEL.S_SRV_REQ

After  Image:                                             Partition 4   G  m
 0000 000d 0000 0009 312d 3131 3747 5246 4f00 0100 | ........1-117GRFO...
 1500 0032 3031 322d 3031 2d30 363a 3033 3a30 313a | ...2012-01-06:03:01:
 3538 0002 000b 0000 0007 312d 524a 5936 5a00 0300 | 58........1-RJY6Z...
 1500 0032 3031 322d 3031 2d30 363a 3033 3a30 323a | ...2012-01-06:03:02:
 3030 0004 000b 0000 0007 312d 524a 5936 5a00 0500 | 00........1-RJY6Z...
 0a00 0000 0000 0000 0000 0100 0600 0500 0000 0130 | ...................0
 0007 0005 0000 0001 4e00 0800 0500 0000 014e 0009 | ........N........N..
================================================================================


Note -- The above is the problemetic record where the column comm_need_flg is having some wrong data, also this
particular record is in the middle of the trasaction (TransInd   :     .  (x01)), so all the records from the
begining to this transaction will be rolled backed by ogg.


logdump>n

___________________________________________________________________
Hdr-Ind    :     E  (x45)     Partition  :     .  (x04)
UndoFlag   :     .  (x00)     BeforeAfter:     A  (x41)
RecLength  :  4409  (x1139)   IO Time    : 2013/06/16 01:33:00.838.513
IOType     :    15  (x0f)     OrigNode   :   255  (xff)
TransInd   :     .  (x01)     FormatType :     R  (x52)
SyskeyLen  :     0  (x00)     Incomplete :     .  (x00)
AuditRBA   :      13685       AuditPos   : 201130364
Continued  :     N  (x00)     RecCount   :     1  (x01)

2013/06/16 01:33:00.838.513 FieldComp            Len  4409 RBA 821569564


Note -- The above is the next record of the problemetic record. We can start the replicat from this RBA.
Before that we need to handle the previous records in this transaction.




>>-- Add the below parameters in the abended replicat group and start the replicat. This parameter will
commit the records one by one so all the records will be commited and the replicat will get abend when
exactly it reaches the problemtic record.


grouptransops 1
maxtransops 1


>>-- Now take the export of that particualr record from the source and import to the target table.


>>-- Now alter the replicat to the next good RBA which we have identified by logdump (RBA 821569564).

>>-- Remove the params  GROUPTRANSOPS 1 and MAXTRANSOPS 1 from the replciat group.


ggsci>dblogin userid <username>, password <password>
ggsci>alter replicat <replicat-name>, extrba 821569564    -- No need to specify the seq no if we are altering on the same trail file seq.
ggsci> start replicat <replicat-name>

Thanks





 











1 comment: