[gamin] questions about gamin



Dear Gamin devs,

I've recently become aware of gamin, which seems to be the answer to
an itch I need scratched.  I'm looking to add some type of file-change
notification system to a server called mt-daapd
(http://www.mt-daapd.org/), which streams music using the DAAP
protocol used in iTunes (and some compatible players like, I think,
Rythmbox).  The server needs to know when any of the songs that it is
serving change and the current notification mechanism is polling based
on a configurable timer.

With that said, I am seeking something similar to FAM that will span
multiple OS's and will use whatever event system each OS provides.
>From my quick search of the gamin website and mailing list, it appears
that gamin will use inotify/dnotify/polling on Linux, kqueue, and
something else on NetBSD.  So, I have a few questions, if someone
doesn't mind spending a moment answering them:

1. On other systems, e.g. OpenBSD, where there might only be support
for user-space polling, will the time-out be configurable through
gamin?

2. Is there any kind of effort to integrate gamin (or inotify) into
other servers that you are aware of?  I would be interested to hear
about their experiences...

3. Is recursive notifcation supported?  For example, I want to
monitor, say, "/mnt/storage/", in such a way that any file in that
directory, or any subdirectory, is handled without needing to register
for each subdirectory.  Handling each subdirectory might be a pain,
but I am willing to implement it, except that many systems have some
kind of limit on the number of open fd's, which would not allow this
to scale up as needed.  Also, it was brought to my attention that, in
FAM, "each process is limited to 1000 active requests at a time". 
Does this constraint still exist?

4. It seems that some of the developers (specifically, the guy that
did the big inotify backend patch) seems to think gamin is only
applicable for desktop usage.  Should I take from this that gamin is
not going to be a good fit for some reason?

With all of this said, I apologize if these answers are spelled out
somewhere and I'm very appreciative of everyone's work in this field,
it seems that this is the only decent project looking to replace FAM.


Thanks in advance,
Sean



[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]