Hi list,
I have a question concerning Oracle and NFS locks.
Last night, a database crashed. The DBMS itself is installed on a linux machine, the data and logs are stored in two filer qtrees, mounted via NFS. When the DBA tried to start it again this morning, Oracle wrote an Alarm.log entry saying the controlfile was locked.
After doing the obvious stuff (renaming the files in order to get rid of hardlinks, umounting and remounting, etc.) I ended up looking through NOW, where I found ntapcs1386. I followed the instructions from the article (umounting, doing `sm_mon -l <host>`, deleting /etc/sm/*, killing lockd and statd on the client's side, re-mounting). I checked the locks using `lock -h` and found the filer did not show any for the machine in question (I'm not completely sure it did so before, though).
However, Oracle kept telling the controlfile was locked. I supposed the problem was on the client side, but not being too deep into the internals of NFS and lockd, I took my last option and cowardly rebooted the linux machine (*argl*). Well, afterwards it worked...
Now my question: Am I correct in assuming that lockd (and, perhaps, statd) do store some information in the file system, maybe in /tmp, from where it is re-read when the process starts again? Or does anyone with more clue than me have a better explanation for the behavior we experienced?
TIA for any hints and a good start into the new year
Mark