Environment
Novell eDirectory 8.7.3.9 for Solaris
Novell eDirectory 8.7.3.9 for Linux
Novell eDirectory 8.7.3.9 for AIX
Novell eDirectory 8.7.3.9 for HP-UX
Situation
It is possible in with very large dibs and running ndsrepair -E or -T very frequent ly that ndsrepair can cause corruption to a header of a block in the eDirectory database.
When the corruption occurs, the text NDSREPAIR: Process completed is written to the database.
The corruption causes -618 errors when the block is accessed.
To verify if -618 errors are caused by this specific issue, run ndstrace with the +RECM and +AREQ tags. The ndstrace will show similar to the following:
DSASearch, Top:: Version 4, Iterator 0x0, Base .container.TREE.,Scope 2, NodesToSearch 0, InfoType 1, Flags 0x802002, Timeout 0, uCommandNum 0,DSASearch, SubTree:: Version 4, Iterator 0x0, Base.container.TREE., Scope 2, NodesToSearch 0, InfoType 1, Flags0x802002, Timeout 0, CommandNum 0 , EntryCount 0, Error succeededSMI Error Code = failed, 49231 (0xc04f)DSASearch, WalkToNextEntry:: Version 4, Iterator 0x0, Base.container.TREE., Scope 2, NodesToSearch 0, InfoType 1, Flags0x802002, Timeout0, CommandNum 1 , EntryCount 55, Error failed, inconsistent database (-618)DSASearch, Error:: Version 4, Iterator 0x0, Base.container.TREE., Scope 2, NodesToSearch 0, InfoType 1, Flags0x802002, Timeout 0, EntryCount 55, Error failed, inconsistent database (-618)Searching "": NDS error:inconsistent database (-618) returnedLDAPSearchToCB failed, err = inconsistent database (-618)Sending operation result 80:"":"NDS error: inconsistent database (-618)" toconnection 0x842bd80Executing the strings command on the database, will show the NDSREPAIR: Processed completed string.
Resolution
Run an ndsrepair to rebuild the database.
ndsrepair -R -d yes
To prevent this issue in the furture:
Apply eDirectory 8.7.3 SP10 or newer available at https://dl.netiq.com
Note: Other forms of database corruption can cause block checksum errors. This fix only addresses ndsrepair completion message being written to the block header. If the strings command doesn't return the ndsrepair completion message, this fix doesn't apply.
ndsrepair -R -d yes
To prevent this issue in the furture:
Apply eDirectory 8.7.3 SP10 or newer available at https://dl.netiq.com
Note: Other forms of database corruption can cause block checksum errors. This fix only addresses ndsrepair completion message being written to the block header. If the strings command doesn't return the ndsrepair completion message, this fix doesn't apply.