Last week i had the problem that a user who got a new replica of his
mail file does not get new mails again. Every time he start the replication of
his mail file he got the error "File does not exist" in the replicator
tab. The replication log shows that the replica is sending data to the
server, but does not get any data from the server.
The
error message "File does not exist" on the client log does not really help,
but there is also an error in the server log which shows the root cause
of the problem.
13.10.2014 16:49:37 The database
F:\Lotus\Domino\SERVER\mail\user.nsf attempted to access a missing file:
f:\lotus\daos\SERVER\0001\3F67501E6AA30F96DACABAC0E1F27E2A8206AA0CC00025069.nlo:
File does not exist.
Ok now we know that the problem
is a missing NLO file in the DAOS directory. When the client wants to
replicate the document which contains the reference to the NLO file the
server cannot provide the document because he can not load the
attachment. Normally you would restore the missing NLO file from your
backup, but what is to do if you are not able to restore this file.
First possible solution is to delete all documents from a database which have references to missing NLO files with fixup.
load fixup -D -J user.nsf
I do not like this solution, because maybe the document with the missing NLO contains important informations.
So the better solution is to search for the document and decide manually if it is save to permanently remove the document.
Go to the server console and set the configuration variable "DEBUG_DAOS_DIAGNOSTICS" to 1
set configuration DEBUG_DAOS_DIAGNOSTICS=1
There is no restart of the server needed.
Tell the DAOSMGR to create a detailed overview over all NLO's and the corresponding documents.
tell daosmgr LISTNLO MAP -V mail/user.nsf
You
will find the created "listnlo.txt" file in the database directory of
the server. In our example in "mail". Copy the file to your local
workstation and open it in your favorite spreadsheet application for
example Libreoffice Calc.
Then
you can search for your missing NLO in the RRV_HASHKEY column. The
NoteID of the document which references the missing NLO file is in the
second column (DOC_NOTEID_HEX).
Now you can search for
the NoteID in the Administrator client and fortunately in my case it was
only a spam mail which was save to remove from the database.
After that the replication of the database worked again without a problem.
Do not forget to disable the debug variable with
set configuration DEBUG_DAOS_DIAGNOSTICS=0
ad
tell daosmgr LISTNLO MISSING mail/user.nsf should give you just the missing NLO files. Might be a little quicker to find the document that needs help.
ReplyDeleteThank you for the very good suggestion. I will try this, next time.
ReplyDelete