Tuesday, October 14, 2014

How to find the documents which reference a DAOS NLO file.

Yesterday i had the problem that a user who got a new replica of his mail file does not get new mails. 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 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.

Import IBM DAOS NLO List in Libreoffice

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.

Open IBM Notes Domino Notes in Administrator

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


  1. Excellent! Helped us get rid of a virus attachment, by finding, and deleting, the NLO file.

  2. Hey, Ralf, this was a very useful post. Running debug -d -j wasn't deleting the document with the invalid NLO reference for me. I think the reason for that is because there were two attachments to the message and the other attachment consisted of a valid NLO reference. So I had to figure out how to locate the document with the invalid reference -- in a 3.5 GB mail database. Thank you so much for this post!

  3. Took me time to read all the comments, but I really enjoyed the article. It proved to be Very helpful to me and I am sure to all the commenters here! It’s always nice when you can not only be informed, but also entertained! document design solutions

  4. You have a genuine capacity for composing one of a kind substance. I like how you think and the way you speak to your perspectives in this article. I concur with your mindset. Much obliged to you for sharing. dokument

  5. Thanks for providing recent updates regarding the concern, I look forward to read more. pasaport ├že┼čitleri