A Oracle DBA's BLOG

Welcome to my ORACLE DBA blog. You will be Amazing!!!

Monday, March 2, 2015

OGG-01028 failed to start transaction ERROR


ERROR OGG-01028 Recovery record is missing from log with seqno when extract has reached log with seqno block size 512, and next_checkpoint  RBA


CAUSE1:
This error occurs when  the extract's starting seqno# and rba are not on log write boundary. When positioning by time, extract will find the right log write boundary by itself.

CAUSE 2:
Extract may fail with same error due to bug in AsyncReader logic. This issue occurs when the AsyncReader reaches an EOF condition and stops read operations before the REDO thread detects the EOF condition and instructs the AsyncReader thread to stop reading.

ACTION:
1.       Get missing transaction
2.       Update your database and Goldengate version to resolve bug.
Issue affects OGG versions 11.2.1.0.7+ including OGG v12

The fix is in bug's 18874054 and 19721652

Both the bug fixes are needed to avoid hitting the error and OGG version 11.2.1.0.28 has those bug fixes.
For first solution we have to do following action.

Step1
Check status of Extract

GGSCI (excellentJob1) 1>info extract Ext1

EXTRACT    Ext1  Last Started 2015-02-27 14:35   Status ABENDED
Checkpoint Lag       00:00:00 (updated 01:05:09 ago)
Process ID           14760
Log Read Checkpoint  Oracle Redo Logs
                     2015-03-02 16:07:33  Thread 1, Seqno 143325, RBA 35054360
                     SCN 2605.2934252862 (11191324058942)

GGSCI (excellentJob1) 2>info Ext1,showch

Current Checkpoint Detail:
Read Checkpoint #1
  Oracle Threaded Redo Log
  Startup Checkpoint (starting position in the data source):
    Thread #: 1
    Sequence #: 143210
    RBA: 4094992
    Timestamp: 2015-02-27 14:00:00.000000
    SCN: Not available
    Redo File:
  
 Recovery Checkpoint (position of oldest unprocessed transaction in the data source):
    Thread #: 1
    Sequence #: 143325
    RBA: 124847120
    Timestamp: 2015-03-02 16:38:30.000000
    SCN: 2605.2934289505 (11191324095585)
    Redo File: Not Available
   
Current Checkpoint (position of last record read in the data source):
    Thread #: 1
    Sequence #: 143325
    RBA: 124847956
    Timestamp: 2015-03-02 16:38:30.000000
    SCN: 2605.2934289507 (11191324095587)
    Redo File: Not Available

So,Now we need next block number. The syntax to calculate is
 Ceil(Current Rba /block_number)*(block_number)

SQL> select ceil (124847956/512)*512  from dual;
CEIL(124847956/512)*512
-----------------------
              124848128

After we get next block number, we have to alter the goldengate transaction as syntax below
alter extract <extract_name>,thread 1,extseqno <ext sequence number>,extrba <extrba number>

GGSCI (excellentJob1) 3> alter extract Ext1 ,thread 1, extseqno 143325,extrba 124848128 [ next rba]
EXTRACT altered.

GGSCI (excellentJob1) 4>  alter extract Ext1 ,thread 1, ioextseqno 143325,ioextrba 124847956 [current rba]
2015-03-02 16:39::11  INFO    OGG-00988  WARNING: Unsupported operation. This mig EXTRACT: ioseq =143325  iorba = 124847956.
Are you sure you want to continue?
yes
EXTRACT altered.

So, Now start the Extract

GGSCI (excellentJob1) 5>  Start Extract Ext1
Sending START request to MANAGER ...
EXTRACT Ext1 starting

GGSCI (excellentJob1) 6> info Ext1
EXTRACT    Ext1    Last Started 2015-03-02 16:58:11  Status RUNNING
Checkpoint Lag       00:00:00 (updated 00:00:05 ago)
Log Read Checkpoint  Oracle Redo Logs
      2015-03-02 16:39:11  Thread 1, Seqno 143325, RBA
124847956 

Hope it help full