[tracker] SPARQL: Use SQL UNION ALL instead of just UNION
- From: Jürg Billeter <juergbi src gnome org>
- To: svn-commits-list gnome org
- Subject: [tracker] SPARQL: Use SQL UNION ALL instead of just UNION
- Date: Thu, 23 Jul 2009 20:08:41 +0000 (UTC)
commit d891e1221e40dfaae6b6ae6b8ac33eecbc8c03c6
Author: Jürg Billeter <j bitron ch>
Date: Thu Jul 23 22:06:55 2009 +0200
SPARQL: Use SQL UNION ALL instead of just UNION
UNION without ALL implies DISTINCT, which can lead to bad performance.
src/libtracker-data/tracker-sparql-query.vala | 8 ++++----
1 files changed, 4 insertions(+), 4 deletions(-)
---
diff --git a/src/libtracker-data/tracker-sparql-query.vala b/src/libtracker-data/tracker-sparql-query.vala
index 52ef798..1b5ff50 100644
--- a/src/libtracker-data/tracker-sparql-query.vala
+++ b/src/libtracker-data/tracker-sparql-query.vala
@@ -93,7 +93,7 @@ public class Tracker.SparqlQuery : Object {
if (first) {
first = false;
} else {
- sql.append (" UNION ");
+ sql.append (" UNION ALL ");
}
sql.append_printf ("SELECT ID, (SELECT ID FROM \"rdfs:Resource\" WHERE Uri = '%s') AS \"predicate\", ", prop.uri);
@@ -145,7 +145,7 @@ public class Tracker.SparqlQuery : Object {
if (first) {
first = false;
} else {
- sql.append (" UNION ");
+ sql.append (" UNION ALL ");
}
sql.append_printf ("SELECT ID, (SELECT ID FROM \"rdfs:Resource\" WHERE Uri = '%s') AS \"predicate\", ", prop.uri);
@@ -182,7 +182,7 @@ public class Tracker.SparqlQuery : Object {
if (first) {
first = false;
} else {
- sql.append (" UNION ");
+ sql.append (" UNION ALL ");
}
sql.append_printf ("SELECT ID, (SELECT ID FROM \"rdfs:Resource\" WHERE Uri = '%s') AS \"predicate\", ", prop.uri);
@@ -776,7 +776,7 @@ public class Tracker.SparqlQuery : Object {
}
if (pattern_idx > 0) {
- pattern_sql.append (" UNION ");
+ pattern_sql.append (" UNION ALL ");
}
visit_graph_pattern (sub_graph_pattern);
}
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]