Well aware of the -b bugs. We have filed many issues and have them all resolved on our version.
We don't xfer the ckp's because it is 60GB over a WAN. We also "zero-out" the .jnl files before and after the ones we want to rollforward. We do NOT monkey with the .cnf file, just transfer it.
-----Original Message-----
From: martin.bowes@ctsu.ox.ac.uk [mailto:martin.bowes@ctsu.ox.ac.uk]
Sent: Thursday, June 09, 2005 4:13 AM
To: Kale, Mark (STP)
Cc: info-ingres@cariboulake.com
Subject: Re: [Info-ingres] Re: Ingres stand-by database
Hi Mark
I think I may have missed a point here, but...
You do a backup of your production database and then only
shove the journals over to the recovery host - not the checkpoint you
just took.
Then, after monkeying with the config file, you use the journals
to do a rollforwarddb -c -b?
Why?
Why don't you use the checkpoint you just made on the
production host, transfer those checkpoint tar files to the DR host and
do a normal recovery?
What have I missed?
BTW. The -b flag on rollforwarddb has been subject to some
bugs. Specifically relating to whether or not it represents the transaction
commit time - as it is supposed to.
Marty
> Chloe,
>
> Thought I would chime in. We have a drp box configured almost
> identically to production. We have a cronjob that copies over journal
> files (not yet copied) every 10 minutes to our drp server. We set a
> server parameter to make sure the log is cleared at least every 5
> minutes (in reality it is done about each minute). So worst case, we
> would lose 15 minutes of data (configurable).
>
> Each night we checkpoint our database on production and copy the
> cnf/dmp files to drp. We run a cute script to "zero out" the journal
> files that show up in infodb after the checkpoint. We then get the
> next-to-last checkpoint time and run the following rollforwarddb:
>
> # copy config file to safe place
> cp -p /usr/ingres/data1/ingres/data/default/${db}/aaaaaaaa.cnf \
> /ingsav/cnf/${db}/aaaaaaaa.cnf.${tm}.roll-c+j.before
>
> echo "Before config file copied to /ingsav/cnf/$db"
>
> #
> # Must use force flag, here is Ingres error without it:
> #
> # Mon May 17 16:22:53 2004 E_DM1351_RFP_BTIME_NOFORCE Rollfoward
> parameter e
> rror. 'ROLLFORWARDDB -b' has been requested without the force flag
> (#f). This recovery starts from an unknown database state, and cannot
> be performed without specifying the force flag. The results of a
> ROLLFORWARDDB -b recovery are unpre dictable unless it immediately
> follows a ROLLFORWARDDB -e -norollback specifying
> exactly the same time.
> #
>
> ${II_SYSTEM}/ingres/bin/rollforwarddb "#c${ckpnum}" -c +j "#m4" "#f"
> -b${ckpdate } ${db} -u${dbo} >> $log 2>&1 ret_code=${?}
>
>
> We follow this with full checksums against another copy of the
> production checkpoint that we just took. It has worked on Ingres 2.6
> for a couple of years anyway.
>
> Hope this helps,
>
> Mark Kale
>
> _______________________________________________
> Info-ingres mailing list
> Info-ingres@cariboulake.com
> http://mailman.cariboulake.com/mailman/listinfo.py/info-ingres
>