Consultor Eletrônico



Kbase P131212: PROSTRCT LIST causes system error 43 with errno = 2 after database move
Autor   Progress Software Corporation - Progress
Acesso   Público
Publicação   2/12/2010
Status: Unverified

SYMPTOM(s):

PROSTRCT LIST causes system error 43

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

** Cannot find or open file testdb.d1, errno = 2. (43)

Database was moved to a new location before PROSTRCT LIST command was used

Database contains absolute path names for its extents

No new structure file is created after running PROSTCT LIST command

FACT(s) (Environment):

All Supported Operating Systems
OpenEdge 10.1x

CAUSE:

Bug# OE00168248

FIX:

Workaround: repair the control area after the OS move of the database

- before moving the database with OS utilities, ensure that there is a current valid structure file for the database [dbname.st]
run: prostrct list dbname dbname.st
- when moving the database to the new directory, move the above mentioned structure file as well
- after moving the database to the new directory, edit the above mentioned structure file in the NEW directory to reflect the current full paths of every database extent
- run: prostrct repair dbname dbname.st
- run: prostrct list dbname to verify that the control area reflects the current location of every database extent.

NOTE: if the database is often moved to the same place, a dummy .st file could be placed in this directory and then simply copied after the move
eg: cp dbname0.st dbname.st

CAUTION: if the originating database has recently had it's structure modified (eg new extents added) then this 'dummy' st file will be invalid.