Consultor Eletrônico



Kbase 18481: How to Recover from a Missing or Lost BI File
Autor   Progress Software Corporation - Progress
Acesso   Público
Publicação   16/10/2008
Status: Technically Reviewed

GOAL:

How to recover from a user or system error that results in the corruption or loss of a before-image (BI) file.

SYMPTOM(s):

** Cannot find or open file <file-name>, errno = <number>. (43)

Invalid BI file, before-image file is zero length. (877)

FIX:

Hardware problems and operating system bugs often occur without notification. If your database happens to have a corrupted or missing BI file as a result of one of these unforeseen scenarios and you cannot go to a backup, take the following steps as one way to address the problem.

The following also holds true in the case of user error when operating system backups fail to list all components for the database and you do not have the correct BI file when you restore from a backup.

General errors that indicates you are missing a BI file or are pointing to an inappropriate BI file are:


**Cannot find or open file <filename>, ernno = <number>. (43)

<filename> references either your dbname.bi or dbname.b1 etc?

Invalid BI file, before-image file is zero length. (877)

If you have a multi-volume database prior to Version 9.x and have a bad BI file, take these steps:


NOTE: If you use a single volume database, skip Step 1 and proceed directly to step 2. This automatically creates a dbname.bi file for you in the current directory you are in when you issue the PROUTIL command with the -F (Force) option.

1) PROSTRCT unlock dbname (causes new empty BI extents to be created).

2) Try to access the database in single user mode.


You might receive the following error:


Invalid BI file, before-image file is zero length. (877)

3) If the session started with any error, you must force into your database. This can be done with the following command:


proutil dbname -C truncate bi -F

NOTE: In earlier versions of Progress, you can force in with the pro command. In Version 8.2 and later, you can force into the database only with the PROUTIL truncate command.

If you have Version 9.x and have a lost or inappropriate  BI file, you must create a new database from an empty database with the following steps:


1) Use the command - prodb newdb empty.

2) Rename the newly-created BI file to the olddbname.b1.

3) Use the unlock command:


Prostrct unlock dbname

4) Truncate the dbname with -F  option:


proutil dbname -C truncate bi -F