OGG-01028 Recovery record is missing from log 的BUG處理

studywell發表於2018-11-08

問題現象:OGG 版本11.1.1抽取程式報錯,重啟抽取程式依然報這個錯誤。

2018-11-08 16:55:54  ERROR   OGG-01028  Recovery record is missing from log with seqno 274986 when extract has reached log with seqno 274987, block size 512, and next_checkpoint RBA at 86564984.


問題分析:

參考官網:

https://support.oracle.com/epmos/faces/DocumentDisplay?_afrLoop=365706700587251&parent=EXTERNAL_SEARCH&sourceId=PROBLEM&id=1094767.1&_afrWindowMode=0&_adf.ctrl-state=by7osrpf8_4

問題原因:

The extract was manually stopped and current/next checkpoint is set to a zero length record in redo. This is a very rare condition, and the chance of hitting it is also low. When this extract was restarted, the error occurred. Extract's Current/Next checkpoint is set to a zero length record at the end of a log and on restart this zero length record is skipped as it has no useful data. Since this record is skipped the recovery code thinks this record was missed and generates an error. 

BUG修復:

Both bugs are fixed in 11.2.1, and backported to 11.1.1.1.3


問題處理:

按如下步驟處理,恢復正常;

1. Get block size of your platform.

The block size is shown in the error message.

2018-11-08 16:55:54  ERROR   OGG-01028  Recovery record is missing from log with seqno 274986 when extract has reached log with seqno 274987, block size 512, and next_checkpoint RBA at 86564984.

For reference the following lists the block size of major platforms:

AIX, Linux, Sun, Windows & VMS: 512 Bytes

HP-UX, Tru64: 1024 Bytes

S390, MVS: 4096 Bytes.

2. Backup the checkpoint file in directory dirchk

mkdir bk1108

cp EXT* bk1108

3. info <ext> showch

Get current and recovery checkpoints, example:

GGSCI (CiqEdi) 1> info all


Program     Status      Group       Lag           Time Since Chkpt


MANAGER     RUNNING                                           

EXTRACT     ABENDED     EXT_S1      00:00:00      03:21:47    

EXTRACT     ABENDED     PUM_S1      00:00:00      13670:27:05 

EXTRACT     RUNNING     PUM_S2      00:00:00      00:00:01    



GGSCI (CiqEdi) 2> info ext_s1 showch


EXTRACT    EXT_S1    Last Started 2018-11-08 17:40   Status ABENDED

Checkpoint Lag       00:00:00 (updated 03:22:00 ago)

Log Read Checkpoint  Oracle Redo Logs

                     2018-09-16 17:17:23  Thread 1, Seqno 274986, RBA 86564984


Current Checkpoint Detail:

Read Checkpoint #1

  Oracle RAC Redo Log

  Startup Checkpoint (starting position in the data source):

    Thread #: 1

    Sequence #: 170412

    RBA: 316944

    Timestamp: 2015-09-21 23:09:26.000000

    SCN: Not available

    Redo File: 

  Recovery Checkpoint (position of oldest unprocessed transaction in the data source):

    Thread #: 1

    Sequence #: 274986

    RBA: 86564900

    Timestamp: 2018-09-16 17:17:23.000000

    SCN: 3646.3130322747 (15662581083963)

    Redo File: /data/oradata/oral/redo02.log

  Current Checkpoint (position of last record read in the data source):

    Thread #: 1

    Sequence #: 274986

    RBA: 86564984

    Timestamp: 2018-09-16 17:17:23.000000

    SCN: 3646.3130322747 (15662581083963)

    Redo File: /data/oradata/oral/redo02.log


4. Alter both recovery checkpoint and current checkpoint to the start point of next block number

---This will alter the current checkpoint

alter extract EXT_S1, thread 1,extseqno 274986, extrba 0

5. Alter the extseqno and extrba of recovery checkpoint back to its original recovery checkpoint position

---This will alter the recovery checkpoint

alter extract EXT_S1, thread 1,ioextseqno 274986, ioextrba 0

6. info <ext>, showch

 Confirm the change. 

7. start <ext>

start extract EXT_S1

Note:  Above example is for extract without threads option.  For extract with threads option, "thread <thread#>" is needed for "alter extract " command.

e.g.,  

step 4: ggsci> alter extract <ext>, thread <n>, extseqno 14497, extrba 0   

step 5: ggsci> alter extract <ext>, thread <n>, ioextseqno 14496, ioextrba 149273104

(here, <n> is the ogg thread number).


來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/29519108/viewspace-2219294/,如需轉載,請註明出處,否則將追究法律責任。

相關文章