The service provided to the NetWorker system is designed for high performance insertion and deletion of save records into indexes. This performance is obtained by keeping information cached in the nsrindexd process address space. When the NetWorker system wishes to commit a save session's records, it notifies the nsrindexd daemon (via a remote procedure call) to flush its volatile state to its file(s).
Since the daemon (or the server) may crash at any time, the index files may be left in an inconsistent state. Therefore, the maintenance program, nsrck(1m) is run automatically by the nsrd daemon before the NetWorker service is started.
When the NetWorker service is started, it starts the process nsrindexd which will invoke nsrck -L 1 to perform a fast and efficient check for each of the configured client file indexes. Only the consistency of the index header and journal files are checked. It is generally not necessary (and very time consuming) to check every record and key file in the client file index at startup. If a problem is detected, a more thorough check will be automatically performed on client file index in question.
If you believe an index may be corrupt, you can manually run a higher level check on the index, for example:
nsrck -L 6
Running nsrck -L 7 will not overwrite existing files in the client file index. So, if online client file index data already exists for a saveset for a particular save time, it must be removed before nsrck -L 7 can be used to restore it from the backup media.
Since nsrindexd and nsrck are run at the same time, both programs use an advisory file-locking mechanism on the file v6ck.lck to synchronize their access to an index.