A cross-platform file change monitor with multiple backends: Apple OS X File System Events, *BSD kqueue, Solaris/Illumos File Events Notification, Linux inotify, Microsoft Windows and a stat()-based backend.
When monitoring a directory with a large amount of files changing (say switching a branch on git), the program seems to exit with the following output:
An error occurred and the program will be terminated.
Error: Event queue overflow.
When I do a -v I get this when starting the monitor:
register_signal_handlers: SIGTERM handler registered.
register_signal_handlers: SIGABRT handler registered.
register_signal_handlers: SIGINT handler registered.
start_monitor: Adding path: /cygdrive/c/my-folder
initialize_events: Creating event for C:\my-folder.
initialize_events: Event 380 created for C:\my-folder.
process_path: Processing C:\my-folder.
init_search_for_path: Initializing search structures for C:\my-folder.
init_search_for_path: Open file handle: 392.
continue_read: Event 380 reset.
read_changes_async: 0xffffc880.
try_read: GetOverlappedResult: Overlapped I/O event is not in a signaled state.
process_path: I/O incomplete.
process_path: Processing C:\my-folder.
try_read: GetOverlappedResult: Overlapped I/O event is not in a signaled state.
process_path: I/O incomplete.
process_path: Processing C:\my-folder.
try_read: GetOverlappedResult: Overlapped I/O event is not in a signaled state.
process_path: I/O incomplete.
... repeat as long as the monitor is running ...
And when I do the git checkout:
process_path: GetOverlappedResult returned 42 bytes
continue_read: Event 388 reset.
read_changes_async: 0x60004ece0.
process_path: Processing C:\my-folder.
try_read: GetOverlappedResult: The operation completed successfully.
process_path: GetOverlappedResult returned 0 bytes
An error occurred and the program will be terminated.
Error: Event queue overflow.
stop: Stopping the monitor.
When monitoring a directory with a large amount of files changing (say switching a branch on git), the program seems to exit with the following output:
When I do a -v I get this when starting the monitor:
And when I do the git checkout:
The command I ran was:
fswatch -v -o -1 -e .git -e .gitignore /cygdrive/c/my-folder
Attempted it with/without the excludes, -1 and -v, fwiw.
This works fine if I only change one file.