[OpenAFS] client doesn't see newly created replication sites

Charles Clancy security@xauth.net
Fri, 16 Nov 2001 18:26:33 -0600 (CST)


> I was accessing a volume aproj.emacs from a Linux (Red Hat 7.1,
> 2.4.3-12smp) system running probably openafs 1.0.4 plus patches.  I
> was using the pathname /afs/athena.mit.edu/astaff/project/emacs, a
> "#aproj.emacs" mount point contained in a readonly volume.  There was
> no aproj.emacs.readonly volume, so this got me the RW version.
>
> I asked one of the admins to replicate and release it; she did.
> Several hours later, under that same pathname, I was still getting the
> RW volume.  On another Linux machine (running a later OpenAFS version
> probably, but reinstalled since so I can't check) that had not used
> that pathname since the previous reboot, I promptly got the new RO
> volume.  On a Solaris box running (I think) Transarc AFS 3.6, I see
> the RO volume.

In my experience, say I have 1 RW and 3 RO copies of a volume.  If I mount
the '#' version of the volume, I could hit any of the volumes.  That is,
with 1/4 probability I'd get the RW one, depending on what the client
cached.  If I mount the '%' version (i.e. use the -rw argument to 'fs
mkm') I'm sure to always hit the RW version of the volume.

The solution is to mount the '.readonly' volume instead of just the '#'
volume.  This guarantees you hit the RO one.

The other pseudo-solution I've seen is to reboot the machine.  Then it
will rebuild the cache, and with 3/4 probability decide to use one of the
RO volumes instead.

--
t. charles clancy <> tclancy@uiuc.edu <> www.uiuc.edu/~tclancy