You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@jena.apache.org by aj...@apache.org on 2018/09/18 23:24:17 UTC

jena git commit: JENA-1605: use transactions in spatialindexer

Repository: jena
Updated Branches:
  refs/heads/master 726f32ca0 -> 4816dcecd


JENA-1605: use transactions in spatialindexer


Project: http://git-wip-us.apache.org/repos/asf/jena/repo
Commit: http://git-wip-us.apache.org/repos/asf/jena/commit/4816dcec
Tree: http://git-wip-us.apache.org/repos/asf/jena/tree/4816dcec
Diff: http://git-wip-us.apache.org/repos/asf/jena/diff/4816dcec

Branch: refs/heads/master
Commit: 4816dcecd2992a8236ebbebb30ad2a1796aab92c
Parents: 726f32c
Author: ajs6f <aj...@apache.org>
Authored: Tue Sep 18 11:43:51 2018 -0400
Committer: ajs6f <aj...@apache.org>
Committed: Tue Sep 18 11:43:51 2018 -0400

----------------------------------------------------------------------
 .../src/main/java/jena/spatialindexer.java         | 17 ++++-------------
 .../jena/query/spatial/SpatialIndexContext.java    |  6 +++++-
 2 files changed, 9 insertions(+), 14 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/jena/blob/4816dcec/jena-spatial/src/main/java/jena/spatialindexer.java
----------------------------------------------------------------------
diff --git a/jena-spatial/src/main/java/jena/spatialindexer.java b/jena-spatial/src/main/java/jena/spatialindexer.java
index af8ed56..c3695f1 100644
--- a/jena-spatial/src/main/java/jena/spatialindexer.java
+++ b/jena-spatial/src/main/java/jena/spatialindexer.java
@@ -18,18 +18,15 @@
 
 package jena;
 
-import java.util.Iterator;
-
 import arq.cmdline.CmdARQ;
 import jena.cmd.ArgDecl ;
 import jena.cmd.CmdException ;
-import org.apache.jena.graph.Node ;
 import org.apache.jena.query.Dataset ;
 import org.apache.jena.query.spatial.DatasetGraphSpatial;
 import org.apache.jena.query.spatial.SpatialDatasetFactory;
 import org.apache.jena.query.spatial.SpatialIndex;
 import org.apache.jena.query.spatial.SpatialIndexContext;
-import org.apache.jena.sparql.core.Quad ;
+import org.apache.jena.system.Txn;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 
@@ -104,18 +101,12 @@ public class spatialindexer extends CmdARQ {
 
 	@Override
 	protected void exec() {
-		// Set<Node> properties = getIndexedProperties() ;
 		spatialIndex.startIndexing();
-
-		Iterator<Quad> quadIter = dataset.find(Node.ANY, Node.ANY, Node.ANY,
-				Node.ANY);
-		for (; quadIter.hasNext();) {
-			Quad quad = quadIter.next();
-			context.index(quad.getGraph(), quad.getSubject(), quad.getPredicate(),
-					quad.getObject());
+		Txn.executeRead(dataset, () -> dataset.find().forEachRemaining(quad -> {
+			context.index(quad);
 			progressMonitor.progressByOne();
 
-		}
+		}));
 		spatialIndex.finishIndexing();
 		progressMonitor.close();
 	}

http://git-wip-us.apache.org/repos/asf/jena/blob/4816dcec/jena-spatial/src/main/java/org/apache/jena/query/spatial/SpatialIndexContext.java
----------------------------------------------------------------------
diff --git a/jena-spatial/src/main/java/org/apache/jena/query/spatial/SpatialIndexContext.java b/jena-spatial/src/main/java/org/apache/jena/query/spatial/SpatialIndexContext.java
index c5d392c..8097592 100644
--- a/jena-spatial/src/main/java/org/apache/jena/query/spatial/SpatialIndexContext.java
+++ b/jena-spatial/src/main/java/org/apache/jena/query/spatial/SpatialIndexContext.java
@@ -26,7 +26,7 @@ import java.util.Set;
 
 import org.apache.jena.atlas.logging.Log ;
 import org.apache.jena.graph.Node ;
-
+import org.apache.jena.sparql.core.Quad;
 import org.locationtech.spatial4j.shape.Shape;
 
 public class SpatialIndexContext {
@@ -42,6 +42,10 @@ public class SpatialIndexContext {
 		this.spatialPredicatePairValues = new HashMap<>();
 	}
 
+	public void index(Quad q) {
+		index(q.getGraph(), q.getSubject(), q.getPredicate(), q.getObject());
+	}
+
 	@SuppressWarnings("deprecation")
     public void index(Node g, Node s, Node p, Node o) {