guard/rb-inotify

Compass watch crashes on rb-inotify.

Closed this issue · 1 comments

I honestly don't know whether it's compass, sass, ruby, rb-inotify bug or something I'm screwing on my side, but every few minutes compass watch crashes throwing these:

Exception on line ["120"] of /usr/local/rvm/gems/ruby-1.9.3-p448/gems/rb-inotify-0.9.2/lib/rb-inotify/event.rb: inotify event queue has overflowed.
  /usr/local/rvm/gems/ruby-1.9.3-p448/gems/rb-inotify-0.9.2/lib/rb-inotify/event.rb:100:in `new'
  /usr/local/rvm/gems/ruby-1.9.3-p448/gems/rb-inotify-0.9.2/lib/rb-inotify/event.rb:100:in `consume'
  /usr/local/rvm/gems/ruby-1.9.3-p448/gems/rb-inotify-0.9.2/lib/rb-inotify/notifier.rb:277:in `read_events'
  /usr/local/rvm/gems/ruby-1.9.3-p448/gems/rb-inotify-0.9.2/lib/rb-inotify/notifier.rb:238:in `process'
  /usr/local/rvm/gems/ruby-1.9.3-p448/gems/rb-inotify-0.9.2/lib/rb-inotify/notifier.rb:221:in `run'
  /usr/local/rvm/gems/ruby-1.9.3-p448/gems/listen-0.7.3/lib/listen/adapters/linux.rb:47:in `block in start'

All gems installed are:

breakpoint (2.0.7)
chunky_png (1.2.8)
compass (0.13.alpha.4, 0.12.2)
ffi (1.9.0)
fssm (0.2.10)
listen (1.1.6, 0.7.3)
rb-fsevent (0.9.3)
rb-inotify (0.9.2, 0.9.1)
rb-kqueue (0.2.0)
sass (3.3.0.alpha.253, 3.2.10)
stitch (0.1.7.beta.3)
susy (1.0.9)

Any clues?

nex3 commented

From the inotify FAQ:

Q: What means IN_Q_OVERFLOW?
IN_Q_OVERFLOW is emitted when the appropriate queue is full and can't take more events. If this event occurs frequently you should read events faster and eventually increase the limit for queues. This limit can be read and changed by reading/changing the appropriate procfs file (/proc/sys/fs/inotify/max_queued_events).

For reference, IN_Q_OVERFLOW is the internal flag that causes the error you're seeing. It sounds like you may need to increase the limit in /proc/sys/fs/inotify/max_queued_events.