Hi everyone,

Anyone can help to resolve the following mysteries ?

1) Once the backup session is terminated, cannot recover further logs

2) Would the LOG sequence recycle (between 001 and 999)?

3) Successfully recovered a log but database does not contain all the expected data
sdb1 -> inserted total 1000 rows in a few separate commits and finally generate log 
sequence 20
sdb2 -> recover up to & include log 20 + recover_ignore (db_state becomes online)
            found table <1000 rows
*** Should a complete log recovery can bring the database to last checkpoint ?


Have been trying for days, but I'm completely blocked in the above areas.  Any pointer 
is highly appreciated!

Many thanks
Andy


-----Original Message-----
From: Andy Chan 
Sent: 2004?2?20? 19:41
To: Heinrich, Tilo; [EMAIL PROTECTED]
Subject: RE: Error when recovering logs


Thanks a lot!  I've successfully get through the recover_replace within the same 
backup session.

Just want to drill a bit further on the 2nd approach (which suits better my need).  
I've tried but get -71 on the second recover_start.

dbmcli -d sdb2 -u dbm,dbm -uUTL -c recover_start archivelog LOG 014
OK
Returncode              -8020

dbmcli -d sdb2 -u dbm,dbm db_restartinfo
OK
Used LOG Page           1721
First LOG Page          1721
Restartable             1
Id Restart Record       db1.ithlgroup.com:SDB1_20040216_172652
Id LOG Info             db1.ithlgroup.com:SDB1_20040216_172652
Consistent              1

>From dbm.knl, we see the page range for the logs,
LOG_00014       1445       1720
LOG_00015       1721       1898  <-- so we should this, right?!
LOG_00016       1899       2252

dbmcli -d sdb2 -u dbm,dbm -uUTL -c recover_start archivelog LOG 015
ERR
-24988,ERR_SQL: sql error
-71,connection broken server state 6

It seems we cannot continue the recovery :<

One further question I raise before is that the LOG sequence is only 3 digits long.  
What would happen if it overflow to 999, would it recyle back to 001 ?

Thanks again for helping.

-----Original Message-----
From: Heinrich, Tilo [mailto:[EMAIL PROTECTED]
Sent: 2004?2?20? 1:02
To: [EMAIL PROTECTED]
Subject: RE: Error when recovering logs


Hello Andy,

please use recover_replace only directly after a recover_start or another 
recover-replace.

So the following will work:

dbmcli -d ... -u ...,... -uUTL
>recover_start   archivelog LOG 014
>recover_replace archivelog /home/sdb/archive/log.ARC 015
>recover_replace archivelog /home/sdb/archive/log.ARC 016
...

If you stop the log recovery by ending your dbmcli session, the following could work:

dbmcli -d ... -u ...,... -uUTL -c recover_start archivelog LOG 014
dbmcli -d ... -u ...,... -uUTL -c recover_start archivelog LOG 015
...

But to make sure that this works under all circumstances you have to use 
db_restartinfo inbetween all those dbmcli calls, to make sure that you restore the 
right log backups. This is necessary, because at the end of each dbmcli call an 
implicit recover_cancel stops the database kernel's log recovery process. As log 
reading and log redoing are two different things in the database kernel, it can be 
sometimes necessary to recover a log backup for the second time, because its last 5 
pages were not redone before the recover_cancel. I hope that makes sense.

The problem you actually encountered ("DBM-Api error ( -4...") is a bug in the 
recover_replace command. The DBM Server is crashing, if recover_replace is called 
without a previous recover_start. By the way that bug is a 5 year old classic, that 
was fixed only last week. So in the next version you will get something like "ERR 
-24990,ERR_NOBACKUPSESSION: no backup session available", if you use recover_replace 
again without a previous recove_start.

Best Regards,
Tilo Heinrich
SAP Labs Berlin


-----Original Message-----
From: Andy Chan [mailto:[EMAIL PROTECTED]
Sent: Thursday, February 19, 2004 12:32 PM
To: Jean-Michel OLTRA; [EMAIL PROTECTED]
Subject: RE: Error when recovering logs


Thanks for responding. In fact, I did put down the path but same error throw out.

dbmcli -d sdb2 -u dbm,dbm medium_get archivelog
OK
archivelog      /home/sdb/archive/log.ARC       FILE    LOG     0       0       NO     
 NO              200402191924
32      20040219192432

dbmcli -d sdb2 -u dbm,dbm -uUTL -c recover_replace archivelog 
/home/sdb/archive/log.ARC 015
DBM-Api error ( -4'Reading header from pipe:(0:NO ERROR(0))')

ls -l /home/sdb/archive/log.ARC.015
-rw-rw----    1 sdb      sdba      1703936 Feb 19 19:28 /home/sdb/archive/log.ARC.015

No error reported in knldiag.err

>From knldiag, it only writes
2004-02-19 19:34:39 31915     11561 COMMUNIC Connecting T143 local 32110
2004-02-19 19:34:39 32060     11561 COMMUNIC Connected  T143 local 32110
which tells me nothing  :(

P.S>
I'm green to MaxDB and I'm sure the current difficulty I'm getting through is valuable 
to my learning.
I'm more than happy to share the step-by-step guide to anyone in need.  :>

-----Original Message-----
From: Jean-Michel OLTRA [mailto:[EMAIL PROTECTED]
Sent: 2004?2?19? 19:05
To: [EMAIL PROTECTED]
Subject: Re: Error when recovering logs


Le jeudi 19 f�vrier 2004, Andy Chan a �crit...
        bonjour,


> Then I use 002 instead of 2 for restoration

> dbmcli -d sdb2 -u dbm,dbm db_admin
> dbmcli -d sdb2 -u dbm,dbm -uUTL -c recover_start archivelog 002
> OK
> Returncode              -8020

> That's the returncode I've been expecting to get ...

> To continue on the recovery, 
> dbmcli -d sdb2 -u dbm,dbm -uUTL -c recover_replace archivelog 003
> DBM-Api error ( -4'Reading header from pipe:(0:NO ERROR(0))')

I think recover_replace is waiting for a path

as the manual says:
recover_replace <medium> [ExternalBackupID <ext_backup_ID>] [<loc>
[<nnn>]]

so it could be:
recover_replace archivelog /path/to/logMediumFile 003

You're writing a nice step-by-step howto....

-- 
jm


-- 
MaxDB Discussion Mailing List
For list archives: http://lists.mysql.com/maxdb
To unsubscribe:    http://lists.mysql.com/[EMAIL PROTECTED]


-- 
MaxDB Discussion Mailing List
For list archives: http://lists.mysql.com/maxdb
To unsubscribe:    http://lists.mysql.com/[EMAIL PROTECTED]

-- 
MaxDB Discussion Mailing List
For list archives: http://lists.mysql.com/maxdb
To unsubscribe:    http://lists.mysql.com/[EMAIL PROTECTED]


-- 
MaxDB Discussion Mailing List
For list archives: http://lists.mysql.com/maxdb
To unsubscribe:    http://lists.mysql.com/[EMAIL PROTECTED]


--
MaxDB Discussion Mailing List
For list archives: http://lists.mysql.com/maxdb
To unsubscribe:    http://lists.mysql.com/[EMAIL PROTECTED]

Reply via email to