What to do next?

Hi,

Thanks to the support I got on this forum I was able to finally backup our progress database after years without a backup....1/2 luck and 1/2 thanks to progresses reliability.

Anyway I was wondering if there is a way to create transaction logs (like SQL) but in Progress. I read something about Before and After Imaging but I am hoping someone can explain them a bit better to me.
 

RealHeavyDude

Well-Known Member
The after image is a log of all transactions that were committed since the last backup. You can restore the last backup and roll the after image foward against it and you have a database that contains everything but the transactions that were open when the incident happened.

Personally I would urge everyone to use after image on every database that cotains anything valuable. Many times I hear: "We have a daily backup job that runs at midnight", or "We use RAID", or "we only have the workgroup license" ...

You can use after image regardless of which database license you use - you might even use it in a single user scenario.

I would not want to be the person telling user to re-do everything they have done yesterday when they come back the other day after the worst case took place ...

Just MHO,
RealHeavyDude.
 

TomBascom

Curmudgeon
I had to give someone the "you have learned a very valuable lesson" lecture just the other week.

They lost the database mid-afternoon on a Friday. No after-imaging. (I've been strongly urging this customer to implement after-imaging for a long time...) They ended up restoring from the Thursday night backup and spending the weekend re-entering Friday's data. It was not pretty.
 
i thought as much...

Now how do I check if After Imaging is enabled, or how do I enable it if it is not currently enabled.

What is before imaging?

I can see a .bi file in my database directory should there be a .ai if after imagining was enabled.
 

TomBascom

Curmudgeon
You want to start by spending some quality time with the documentation and getting familiar with rfutil.
 

RealHeavyDude

Well-Known Member
Just for the record:

The before image (.bx) is mandatory. If you loose it for whatever reason your database is gone. The before image, in a nutshell, contains transaction notes about active transactions so that they can be backed out when the server crashes. Everytime you start the database server crash recovery will occur - all uncommitted transaction will be rolled back and all transactions that are committed but have not been written to the database yet (this is because the database writes to the before image first), will be rolled forward. That is the reason because almost all of the time a Progress database crashes it will come back to life gracefully.

The after image is optional. You need to switch it on and take care of it. The most important thing to consider is, it should never reside on the same disk (or file system) where the database resides. Because when your database is gone because of a disk failure your after image will be gone too.

HTH,
RealHeavyDude.
 
Top