Consultor Eletrônico



Kbase P129100: Database crashes due to corruption of the .db file
Autor   Progress Software Corporation - Progress
Acesso   Público
Publicação   08/07/2008
Status: Unverified

SYMPTOM(s):

Trying to start the database results in a SYSTEM ERROR: Memory violation. (49)

Trying to truncate the BI results in a SYSTEM ERROR: Memory violation. (49)

PROGRESS stack trace for _progres reads:

_thr_slot_offset
sema_post
shmVerifySegment
shmattsegs
shmAttach
dbenv2
dbenv

FACT(s) (Environment):

OS was upgraded

Solaris SPARC 9
Solaris SPARC 10
OpenEdge 10.x
Progress 9.x

CAUSE:

The protrace file shows that the database failed when calling our shmVerifySegment function. This function is used after a shared memory segment is attached to verify that it has our magic number in it. The dbname.db file became corrupted when upgrading the Operating System.


FIX:

Perform a prostrct repair against the database. If that fails as well with the same crash perform an OS backup of the database in its current state and then perform the below:

1. Rename the current .db file.
2. Perform BUILDDB on the database:
PROSTRCT BUILDDB <db-name> <ST file>
3. Proserve the database.