RE: Unix Command

  • From: "Kevin Closson" <kevinc@xxxxxxxxxxxxx>
  • To: <oracle-l@xxxxxxxxxxxxx>
  • Date: Thu, 20 Apr 2006 21:09:09 -0700

 >>>My understanding was that he tested with fuser or lsof and 
>>>found no other users using that file? If that is so, then OS 
>>>may be little slow in recognizing that the situation has changed.

Impossible. There is no "sweep up" demon for this (as it were) in 
any Unix derivation. There is an OS thread in the bowels of unlink(1)
waiting on a kernel semaphore for the lock on the inode held
(incremented)
by the processes that have file descriptors (or mmap(1)s too of course) 
on the file. They close explicitly (e.g., close(1)) or implicitly 
(e.g., exit(1) exec(1)) and the ref count decrements and when 
the count is right the original poor lingering thread in 
unlink(1) gets his deed done.

I remember one really cherry scenario where (a lot like this 
installments on this thread) a customer with a US $1,000,000
SMP was looking for the sqlplus executable. He blamed the
daylights out of the OS because he didn't understand the semantics
of UFS file manipulation. Lo and behold, we started digging in and
found that his Oracle 7 Oracle home had 1 file in it and that
was ${ORACLE_HOME}/bin/oracle.  Can anyone guess how that scenario
came to be?

rm -fr *





>>>--
>>>Mladen Gogala
>>>http://www.mgogala.com
>>>
>>>--
>>>//www.freelists.org/webpage/oracle-l
>>>
>>>
>>>
--
//www.freelists.org/webpage/oracle-l


Other related posts: