[tracker/wip/carlosg/sparql1.1: 116/145] libtracker-data: Store whether resources are blank nodes
- From: Carlos Garnacho <carlosg src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [tracker/wip/carlosg/sparql1.1: 116/145] libtracker-data: Store whether resources are blank nodes
- Date: Thu, 18 Jul 2019 22:33:47 +0000 (UTC)
commit 600d89c8e7703f8db7e456c8aef0792c9850719d
Author: Carlos Garnacho <carlosg gnome org>
Date: Sun Jul 7 20:26:12 2019 +0200
libtracker-data: Store whether resources are blank nodes
Add a new column in the Resource table, so we can fetch the elements
that are blank nodes without second guesses.
src/libtracker-data/tracker-data-manager.c | 2 +-
src/libtracker-data/tracker-data-update.c | 3 ++-
2 files changed, 3 insertions(+), 2 deletions(-)
---
diff --git a/src/libtracker-data/tracker-data-manager.c b/src/libtracker-data/tracker-data-manager.c
index 284d53c5e..c49bec1bd 100644
--- a/src/libtracker-data/tracker-data-manager.c
+++ b/src/libtracker-data/tracker-data-manager.c
@@ -3450,7 +3450,7 @@ create_base_tables (TrackerDataManager *manager,
tracker_db_interface_execute_query (iface, &internal_error,
"CREATE TABLE Resource (ID INTEGER NOT NULL PRIMARY KEY,"
- " Uri TEXT NOT NULL, Refcount INTEGER DEFAULT 0, UNIQUE (Uri))");
+ " Uri TEXT NOT NULL, Refcount INTEGER DEFAULT 0, BlankNode
INTEGER DEFAULT 0, UNIQUE (Uri))");
if (internal_error) {
g_propagate_error (error, internal_error);
diff --git a/src/libtracker-data/tracker-data-update.c b/src/libtracker-data/tracker-data-update.c
index 2aaa170c8..9a3bb1fce 100644
--- a/src/libtracker-data/tracker-data-update.c
+++ b/src/libtracker-data/tracker-data-update.c
@@ -686,11 +686,12 @@ ensure_resource_id (TrackerData *data,
id = tracker_data_update_get_new_service_id (data);
stmt = tracker_db_interface_create_statement (iface, TRACKER_DB_STATEMENT_CACHE_TYPE_UPDATE,
&error,
- "INSERT INTO Resource (ID, Uri) VALUES (?, ?)");
+ "INSERT INTO Resource (ID, Uri, BlankNode)
VALUES (?, ?, ?)");
if (stmt) {
tracker_db_statement_bind_int (stmt, 0, id);
tracker_db_statement_bind_text (stmt, 1, uri);
+ tracker_db_statement_bind_int (stmt, 2, g_str_has_prefix (uri, "urn:bnode:"));
tracker_db_statement_execute (stmt, &error);
g_object_unref (stmt);
}
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]