You may get error “Error: -637 “Previous move in progress” when IDM is not syncing properly or perhaps when trying to do a partition operation such as server removal. This is most likely a stuck obituary or obituaries which need resolving. Read on.
Firstly see that time is in sync, replicas in sync, do a filesystem check if needed, reboot etc.
Time must be in sync and errors must be 0.
Check stuck obituaries: run this locally in all of the servers:
If you see stuck obituaries (BACKLINK, DEAD) try to nudge backlink process by firstly:
and secondly starting up ndstrace:
and in the ndstrace console issuing commands:
You can also try and re-timestamp the obituaries so that eDirectory will process them again
If you see older obituaries they may not get processed by the commands above so here's how to re-timestamp old obituaries
Give it a little time and check again with “ndsrepair -C -Ad -A”
Also another mind trapping jedi-ndstrace-trick with obituaries is:
This is the weirdest piece of information I've come across for a while. Some things just are not printed or I just cannot read them.
If you have MOVE and INHIBIT_MOVE obituaries nicely in pairs that just stick around (unprocessed status etc) and will not go away no matter how many Novell / NetIQ manuals you read try this.
* Go to iMonitor * Fire up advanced mode (look above) * Go to reports and report obituaries (look above) * Click on an "advanced options" of the obituary * Add '&op=all' to the end of the URL * Select "Purge xxx (purgeobj)" * Observe your nerves relieving as those obituaries fly fly away..
For stuck obituaries which are mostly inhibit_moves WITHOUT corresponding MOVED obituary you can release them with iMonitor. I remember to have done it to DEAD obituaries as well but I am not sure. Better google first :)
Here is how to proceed:
* Include obituary types: restored, dead, moved, inhibit move * Run report * Locate the obituary you identified with ndsrepair * Select "release move entry" and be sure you have the right obituary!
Open ndstrace and look, initiate sync between servers if needed and observe the hex addresses of the objects that are broken. Then use “ndsrepair -J <hex_address>” to fix the single object using the entry ID's hexadecimal pointer.
This can take quite a bit of time but I managed to salvage one really messed up eDirectory with a few hours of manual repair work
Also check https://www.novell.com/support/kb/doc.php?id=7004722