Hi,
On 3/30/07, Randall R Schulz <[EMAIL PROTECTED]> wrote:
> Beagle uses inotify for this -- in fact, inotify was basically
> written *for* Beagle with its use cases in mind. inotify is a kernel
> service, so you actually don't need a separate daemon to use it.
OK. The whole point was whether or not it had to perform user-level
polling, which the old FAM (File Alteration Monitory -- note: I had the
name wrong) used to do.
Right. Beagle doesn't do any polling for file changes if you have a
system with inotify. I believe these days FAM also uses inotify.
I think this is a problem worth addressing: Surely there's some way to
minimize the cost upon start-up? It's probably why some people (those
whose computers don't run 24/7) experience Beagle as so intrusive.
Actually this *is* something that we try to do gracefully. We monitor
the load on the system to calculate a delay of when next to crawl a
small set of directories, and in more recent versions Beagle has a
very "nice" CPU priority and instructs the kernel not to automatically
give it a higher one.
What we don't do is immediately crawl through all the directories
adding watches because that was a pretty serious thrashing problem.
(It's basically the same thing as doing "find -type d ~". Painful.)
We did that in very, very early versions of Beagle and it was unusable
even for us developers of it.
I really suspect that for a lot of people it's the cron job that gives
them such a negative impression, because that is designed to be a once
off, middle-of-the-night process and it doesn't do any sort of
throttling based on system load.
Thanks,
Joe
--
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]