Improve performance of mass file deletes
Each individual delete query is not that much noticeably slow individually (still less than the blink of an eye), but get to show on large batch deletes (e.g. deleting thousands of files in a monitored directory).
Apply some optimizations here, so we only try recursive deletes on directories, and so we don't have to query for all graphs that might contain information about a file.
This makes deleting of 1000 files (as measured by individual runs of tracker-miner-fs-3 --no-daemon
) a 1s or so operation, down from ~40s (roughly compared by eye with --no-daemon
runs that find no deleted files)
Fixes: tracker#182 (closed)