9fans - fans of the OS Plan 9 from Bell Labs
 help / color / mirror / Atom feed
From: "Steve Simon" <steve@quintile.net>
To: 9fans@9fans.net
Subject: Re: [9fans] 9p2010
Date: Thu, 23 Apr 2009 19:35:27 +0100	[thread overview]
Message-ID: <94ae84d47c66d502bf9b6ca77e67ef4a@quintile.net> (raw)
In-Reply-To: <a4e6962a0904231055g384c41dbj13dfb806933442bd@mail.gmail.com>

> ...integrate the
> caching into a cache file system

this was discussed at one of the iwp9s I believe.

Ok, a thought experiment.

Extend fossil so that you can attach to objects of the form
fs.changes (e.g. main.changes or other.changes). Open a known file
here (e.g. /update) and you will receive a message when any file in
main (or other in the above example) filesystem is modified. The message
should probably be a dirstat structure and a flag indicating weather
the file itself has changed or only the dirstat.

The client could also read from the file /score and would
get a venti score for the watched filesystem every time
a snap is taken.

To allow the system to synchronise after a period of disconnection
the client could write a venti score to /score before opening /update
to indicate that it needs to catch up the changes since this score's
creation.

It would allow cfs to serve up local files with the knowledge that
the remote server contains the same file and so cfs would feel much
mor responsive.

Batched 9p messages would improve the performance further, of course.
You could teach the cache client to use batched 9p from the begining,
and end up with somthing similar to nemo's octopus.

Note, the files I am describing are those served by fossil, so, by
definition they are disk files, and thus they are cacheable.
This is not a solution for virtual files.

I'am sure there are problems with the above, but you get the idea.

-Steve



  reply	other threads:[~2009-04-23 18:35 UTC|newest]

Thread overview: 11+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2009-04-23 16:26 erik quanstrom
2009-04-23 17:22 ` roger peppe
2009-04-23 17:28   ` erik quanstrom
2009-04-23 17:38     ` David Leimbach
2009-04-23 17:31   ` Fco. J. Ballesteros
2009-04-23 17:53     ` roger peppe
2009-04-26 21:29       ` Roman V. Shaposhnik
2009-04-27  7:32         ` roger peppe
2009-04-23 17:55   ` Eric Van Hensbergen
2009-04-23 18:35     ` Steve Simon [this message]
2009-04-23 17:54 ` Gary Wright

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=94ae84d47c66d502bf9b6ca77e67ef4a@quintile.net \
    --to=steve@quintile.net \
    --cc=9fans@9fans.net \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).