[OpenAFS] a noobs question and problems on a new cell

Kim Kimball dhk@ccre.com
Thu, 10 May 2007 11:20:14 -0600

<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
  <meta content="text/html;charset=ISO-8859-1" http-equiv="Content-Type">
<body bgcolor="#ffffff" text="#000000">
True.&nbsp; Whole-file if smaller than chunk size.<br>
Jeffrey Altman wrote:
<blockquote cite="mid31626744.1178811320272.JavaMail.root@m11"
  <pre wrap="">Kim Kimball wrote:

  <blockquote type="cite">
    <pre wrap="">Read/write data is also cached.  If not changed it remains cached.  If
changed and pushed back to the file server it is marked stale in the
other client caches and fetched again by other clients only if it is
requested again.

Caching is whole-file, so if a large file is changed on client A and was
previously cached on client B, when client B requests the file again it
notices it is marked as stale and fetches the entire file from the file
server by client B.
  <pre wrap=""><!---->
Caching in OpenAFS is not whole-file.  Caching is performed in chunks.
Only the chunks that are actually requested by the client will be placed
into the cache.  Chunks are stored in a least-recently-used list and are
recycled last use first.

If a change to a file occurs by another client, all of the previously
cached chunks for a client will be discarded.  Only the chunks that are
requested in the future will be re-read from the file server.

  <blockquote type="cite">
    <pre wrap="">(Since client A made the changes the file is already cached on client
A.  Writes to cached AFS files go first to the AFS cache and then back
to the AFS file server on flushes or closes or syncs.)
  <pre wrap=""><!---->
On Windows, the writes are written back to the file server in real time.
 The Windows client does not implement the write-on-close semantics of
the UNIX client.

Jeffrey Altman
Secure Endpoints Inc.