Fixing corrupted databases

Corrupted databases don't occur frequently when you use transaction logging. When you use transaction logging to log changes to databases, a server automatically uses the transaction log to restore and recover databases after a system failure -- for example, after server failures or power failures. If a disk failure occurs, you use the transaction log along with a certified backup utility to restore and recover the databases.

The Miscellaneous Events view of the Domino® server log file (LOG.NSF) records detailed messages about corrupted documents and views. These messages in the log file indicate document corruption:

  • Document NTdocument number in database database name is damaged
  • Document document number in database database name has been deleted

The following messages indicate that Domino® has rebuilt, is in the process of rebuilding, or was unable to rebuild damaged views:

  • Page format is incorrect
  • Invalid CNO vector - position == 0
  • Container integrity has been lost - rebuild

If you encounter database corruption in a database, you can use any of these methods to try to fix the problem. Because corruption is much less of an issue for logged databases, these methods are primarily used for solving corruption problems in unlogged databases.

  • Run Fixup to fix corrupted views and documents.
  • Run Updall to fix corrupted views and full-text indexes; if a corrupted view is the problem, try Updall before trying Fixup.
  • Run Compact with the -c option to fix corruption problems that Fixup doesn't correct.
  • Press SHIFT+F9 to rebuild one view; press CTRL+SHIFT+F9 to rebuild all views in a database.
  • Create a replica of the database.