Oracle FAQ | Your Portal to the Oracle Knowledge Grid |
Home -> Community -> Usenet -> c.d.o.server -> Re: spreading my wings -- looking for some recommdations/best practices
Sorry for late reply, some problems with ISP access down this end...
Q:
Suppose I alter a symbolic link so that it points to directory B
(instead of
directory A) precisely as an archive is actually being written (and
hence
the link is in use)?
I thought, and you seem to agree, that the entire archive will end up
safe
and sound in destination A. But, when that archive is finished, does
the
link become 'unused', and hence the change to it takes effect? Would
that
mean the *next* archive gets sent to destination B?
A:
As far as I know, it all depends on what Oracle does with the archive
directories. That I suppose can only be confirmed by looking at the
source
code. IF they open the directory as a file, they might be seeing old
metadata there.
The normal effect would be for the current archive file to be finished and closed by Oracle with close(). This would then free the file unit back to the OS. Any subsequent open of a file would grab whatever is now in the directory definition as far as that link goes.
It's not as if the old definition is still there for the OS to grab,
it's
just that any file unit still open would assume the old definition - a
file unit takes a snapshot of the file metadata at open() time and
keeps
it. Any new file units (be they via open of existing file or create
new file) would grab the current definition of the link from the
directory file itself, whatever it might be at open() time.
There are some minor variations on this depending on the program itself
doing a close(), or an unlink(), or other system calls that imply a
close
of the file unit. But the most common sequence of events would be as I
described above. Having said that, who knows what is in Oracle's code... Received on Wed Oct 27 2004 - 00:08:24 CDT