[tahoe-dev] Keeping local file system and Tahoe store in sync

Brian Warner warner-tahoe at allmydata.com
Sat Feb 7 00:16:35 UTC 2009

On Fri, 06 Feb 2009 15:49:59 -0800
Jeremy Fitzhardinge <jeremy at goop.org> wrote:

> I think its the other way around, no?  inotify can give you events for a 
> whole tree of namespace, whereas dnotify requires that you actually have 
> all the directories open, which doesn't scale at all well.  dnotify is 
> very definitely deprecated these days.

Oops, you're right. inotify is the modern one.

(I used dnotify in buildbot, to watch a mailbox for changes, and it was
gross: SIGIO to tell you that something's changed. I think inotify lets you
select() on an fd, which fits into the reactor a lot better).

From what I could tell, OS-X fseventsd is basically a daemon which subscribes
to the OS-X dnotify equivalent and logs everything, so client programs which
come along later can find out what happened even though they weren't running
when the FS was changed. The promise is that fseventsd is started before any
normal userspace gets to run, so you won't miss anything.

I haven't seen an equivalent for linux, but I think there's nothing
impossible about it (other than perhaps getting people to agree about which
runlevel should start it..)


More information about the tahoe-dev mailing list