Whew, you ain't kidding. When I looked at that, I believe a lot of it
was the link table. I have been idly thinking about simply removing
most of those fsync() calls, or collapsing a whole bunch of
them ... it
would probably speed up operations like volume clones a whole lot. A
few thought experiments made me think that perhaps the consequences of
an incorrect link count aren't so catastrophic that that salvager
couldn't easily recover from it ... but AFS has fooled me before, so
I'm not convinced of that yet :-)
Well, the OS should be syncing dirty buffers to disk in some sort of
reasonable timeframe anyhow, so writing the code to batch the fsync's
would simply be us doing the OS's work for it.
I built a fileserver/volserver that's fsync() less (as in never) and
have been doing some basic testing. First, volrestore operations
seem much faster. Also did a power-off test on a pretty active
volume, and salvager didn't seem to have much of a problem with
it... Going to play around more with it and see what happens...
-rob
_______________________________________________
OpenAFS-devel mailing list
[email protected]
https://lists.openafs.org/mailman/listinfo/openafs-devel