Repairing a Database
If verification of a database reveals errors, you can correct these by running the rodbucx<os> service program with the -repair option.
If, in addition to the -repair option, you also specify the -dump option, rodbucx<os> will write the contents of the items that are to be deleted during reconstruction to the log file rodbu.log.
Example (UNIX)
To repair the UNIX database specified in the DATA section of the server initialization file server.ini, you would call the service program rodbucxu with this command:
rodbucxu ROSRV server.ini -repair -db=DATA
During the repair of a database, rodbucx<os> performs these actions:
• | Completing all remaining write operations |
• | Checking the free memory list and correcting erroneous container entries |
• | Reading all items contained in the index, and repairing or deleting inconsistent items |
• | Rechecking the free memory list if corrupted items where found |
If rodbucx<os> detects inconsistencies during the reading of the items, it will first attempt to reconstruct the item from redundant information that may possibly be available. If this reconstruction attempt fails, the program will try to repair the item by deleting the affected part. If this fails as well (system or link attributes corrupted), the complete item is deleted from the index.
Finally, you should be aware that the repair of a database can require significant amounts of computing time, depending on the degree of corruption and the size of the database.