Development/Tutorials/Metadata/Nepomuk/FileWatchService
Tutorial Series | Nepomuk |
Previous | Ontology Loader Service |
What's Next | Strigi Service |
Further Reading | Nepomuk Services, Nepomuk Server |
Nepomuk File Watch Service
The File Watch service monitors the file system for changes. If files are deleted, the corresponding metadata is removed from the Nepomuk store. If files are moved, the URIs (file resources always have their file URL as RDF resource URI) and the file path are updated.
Currently we use inotify to monitor changes. However, inotify is absolute crap, and does let you monitor file moves unless you are watching both the source and the destination. So, we have to create watches for every single directory, which results in massive IO load when Nepomuk is starting up ( inotify does NOT watch directories recursively )
Someone should improve the file monitoring system in the kernel.
Also, FANotify (inotify's successor) is also crap! It does not support move events at all.