[OpenAFS] cm fails to invalidate cache for deleted files in volume root w/ fakestat

Stephan Wiesand Stephan.Wiesand@desy.de
Thu, 10 Apr 2008 13:45:56 +0200 (CEST)


If a client runs with the -fakestat[-all] option, and has a file cached 
that resides in the root directory of a volume affected by fakestat, it 
fails to invalidate its cache for this file when it's deleted:

ClientA: touch x
ClientB: ls -l x
... 0 Apr 10 13:10 x

ClientA: echo a >> x
ClientB: ls -l x; cat x
... 2 Apr 10 13:11 x
a

ClientA: rm x
ClientB: ls -l x; cat x
... 2 Apr 10 13:11 x                   (!)
a                                      (!)

ClientA: echo b > x
ClientB: ls -l x; cat x
... 2 Apr 10 13:11 x                   (!)
a                                      (!)

ClientB: fs flushv; ls -l x; cat x
... 2 Apr 10 13:12 x
b


I guess it's the same issue reported by Jack Neely on March 17th. We're 
not running with -fakestat-all, just -fakestat. The problem struck when 
mount points for local volumes were accidentally created with the -cell 
option. We can reproduce the problem with local and foreign volumes. 
Turning off fakestat eliminates it reliably.

We observe this with various Linux clients. OpenAFS 1.4.6 or 1.4.7pre3, 
SL3/4/5, 32/64-bit.

An SL3 client still running 1.2.13 does not exhibit this problem.

Bcc to openafs-bugs.

-- 
Stephan Wiesand
   DESY - DV -
   Platanenallee 6
   15738 Zeuthen, Germany