So, following the work to remove inotify and just use GIO, find attached the list of steps we may need when getting GIO events in order to translate them into TrackerMonitor events. As background, GIO raw events are listed here: http://library.gnome.org/devel/gio/stable/GFileMonitor.html#GFileMonitorEvent And the TrackerMonitor events are just: - "item-created" - "item-updated" - "item-deleted" - "item-moved" Note that for event translations, I considered files and directory events in a different way internally, because different steps should be considered in each case. These steps should cover all cases, including the issues of getting DELETE events for directory A when moving it from A to B (in addition to the MOVE(A->B) event). Using a new HT for those, which is actually the thing fully complicating the issue... Anyway, my impression is that even if all these steps are done, the miner-fs should process them "in the same order" as notified by TrackerMonitor, not based on 4 different queues where delete events have precedence (IIRC)... although then that's another issue... Comments more than welcome, specially from Carlos and Martyn :-) -- Aleksander
Attachment:
gio-event-translation.txt
Description: Text document