[OpenAFS] Last Update not updating?
Jeffrey Hutzelman
jhutz@cmu.edu
Mon, 09 Jan 2006 18:32:06 -0500
On Monday, January 09, 2006 11:22:53 AM -0800 Mike Polek <mike@pictage.com>
wrote:
> I'm seeing a strange behavior on Fedora Core 4, openafs 1.4.0.
> I changed a file inside a volume, but the Last Update date
> in the "vos exam <volname>" didn't change.
>
> In the example below, I updated the file "etc.tgz" today,
> Jan 9. The "vos exam" output shows a Last Update of
> Jan 6. Has anyone else seen this behavior?
As it turns out, what matters here is not your clients, but your servers,
which I assume are also 1.4.0. This behavior is expected with newer
servers, due to a performance improvement in the way the volserver handles
the requests made by 'vos examine' and 'vos listvol'. When handling these
requests, the volserver no longer forces the fileserver to flush the latest
volume header data to disk. In the past, this had the side-effect of
forcing the OS to flush all dirty buffers to disk for all filesystems,
which can result in a serious performance impact for a busy fileserver,
especially when it is done for _each volume_ reported by 'vos listvol'.
As a result of this change, the 'last update' date reported by 'vos
examine' can sometimes be incorrect, if the volume has been modified since
the last time the fileserver wrote the volume header to disk. The maximum
amount of time that can pass between the time a change is made and the time
it is reflected in the volume header is about 25 minutes; this number is
smaller for some kinds of changes, or if the number of changes is very
large. Operations for which it is crucial to have the latest volume header
data, such as volume dumps, moves, and releases, will continue to use the
correct data, as before.
I have a change in mind which will cause 'vos examine' to report more
accurate data while still retaining the performance gains for 'vos
listvol'. However, I do not expect this to be done in time for 1.4.1.
-- Jeffrey T. Hutzelman (N3NHS) <jhutz+@cmu.edu>
Sr. Research Systems Programmer
School of Computer Science - Research Computing Facility
Carnegie Mellon University - Pittsburgh, PA