[tracker-miners/wip/carlosg/monitor-event-fixes: 3/3] tracker-miner-fs: Make graph-specific data optional on deletes
- From: Carlos Garnacho <carlosg src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [tracker-miners/wip/carlosg/monitor-event-fixes: 3/3] tracker-miner-fs: Make graph-specific data optional on deletes
- Date: Sun, 9 Aug 2020 23:21:37 +0000 (UTC)
commit ae41e05a7b9447442c5153da88fba5adf4e035e8
Author: Carlos Garnacho <carlosg gnome org>
Date: Sun Aug 9 16:54:45 2020 +0200
tracker-miner-fs: Make graph-specific data optional on deletes
Depending on the file type and its processing state, we may expect
nfo:FileDataObject and/or nie:InformationElement data in the content-
specific graphs.
The delete operations should account for those not being yet added,
or simply missing due to the file type. This fixes delete operations
after the nfo:FileDataObject/nie:InformationElement split.
This required a minor tweak on the corresponding test, so the fake
data we insert resembles more the current data layout as extracted by
the miner.
src/miners/fs/tracker-miner-files.c | 3 ++-
tests/functional-tests/miner-resource-removal.py | 3 ++-
2 files changed, 4 insertions(+), 2 deletions(-)
---
diff --git a/src/miners/fs/tracker-miner-files.c b/src/miners/fs/tracker-miner-files.c
index 8033dceb0..06d356018 100644
--- a/src/miners/fs/tracker-miner-files.c
+++ b/src/miners/fs/tracker-miner-files.c
@@ -2429,7 +2429,8 @@ create_delete_sparql (GFile *file,
" nie:url ?u . "
" }"
" GRAPH ?g {"
- " ?ie nie:isStoredAs ?f . "
+ " ?f a rdfs:Resource . "
+ " OPTIONAL { ?ie nie:isStoredAs ?f } . "
" }"
" FILTER (");
diff --git a/tests/functional-tests/miner-resource-removal.py
b/tests/functional-tests/miner-resource-removal.py
index cf0fd1fd0..100367699 100755
--- a/tests/functional-tests/miner-resource-removal.py
+++ b/tests/functional-tests/miner-resource-removal.py
@@ -37,10 +37,11 @@ class MinerResourceRemovalTest(fixtures.TrackerMinerTest):
def create_extra_audio_content(self, file_urn, url, title):
sparql = "WITH <%s> INSERT { \
+ <%s> a nfo:FileDataObject . \
<%s> a nmm:MusicPiece ; \
nie:title \"%s\" ; \
nie:isStoredAs <%s> . \
- } " % (fixtures.AUDIO_GRAPH, file_urn, title, url)
+ } " % (fixtures.AUDIO_GRAPH, url, file_urn, title, url)
with self.tracker.await_insert(fixtures.AUDIO_GRAPH,
f'a nmm:MusicPiece; nie:title "{title}"',
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]