Consultor Eletrônico



Kbase P138630: Getting error running prostrct add to add an AI area (6976)
Autor   Progress Software Corporation - Progress
Acesso   Público
Publicação   04/03/2009
Status: Verified

SYMPTOM(s):

Error 6957 running prostrct remove to remove AI area but area is not listed in prostrct list

Error locating last extent record of area 19 : After Image Area 4. (6957)

prostrct remove <dbname> ai fails with error:
Error locating last extent record of area <n> : After Image Area <n>. (6957)

After Imaging is disabled prior to removing ai extents

After Image files have been deleted from the file system prior to running prostrct remove.

After image extents are no longer reported by prostrct list after prostrct remove

prostrct add fails with error 6976

Database add extent: ERROR adding extent: -20010. (6976)

A logical error in shared memory has occurred while adding extents online.
Recovery is performed by restarting the database. (12547)

prostrct add FAILED. (12867)

FACT(s) (Environment):

OpenEdge 10.1x
OpenEdge 10.2x
All Supported Operating Systems

CAUSE:

In version 10.0B it was possible to run prostrct remove against After Image files which did not exist.

This was occasionally useful in situations where copies of the database were made to a test machine but the After Image files were never copied since there was no expected need for those files in the test environment.

The intent was to reduce the copy time of moving a database from one machine to another.

Though this methodology is not supported, the prostrct utility did not prevent these steps in versions earlier than OpenEdge 10.1A.

FIX:

To correct the database use "prostrct builddb" with an up-to-date copy of the <databasename>.st file to recreate the database control area.
Do not list the After Image files which have already been removed in the modified .st file.
Re-name the dbname.db file
Run the prostrct builddb.

Example:
prostrct builddb <dbname> up-to-date.st