|
From: <tho...@us...> - 2014-03-11 19:00:42
|
Revision: 7928
http://sourceforge.net/p/bigdata/code/7928
Author: thompsonbry
Date: 2014-03-11 19:00:37 +0000 (Tue, 11 Mar 2014)
Log Message:
-----------
Bug fix to the GASService when multiple in vertices were specified. It was initializing the new frontier in a loop, but the frontier was being reset before each value was inserted....
Modified Paths:
--------------
branches/RDR/bigdata-rdf/src/java/com/bigdata/rdf/graph/impl/bd/GASService.java
Modified: branches/RDR/bigdata-rdf/src/java/com/bigdata/rdf/graph/impl/bd/GASService.java
===================================================================
--- branches/RDR/bigdata-rdf/src/java/com/bigdata/rdf/graph/impl/bd/GASService.java 2014-03-11 18:57:20 UTC (rev 7927)
+++ branches/RDR/bigdata-rdf/src/java/com/bigdata/rdf/graph/impl/bd/GASService.java 2014-03-11 19:00:37 UTC (rev 7928)
@@ -748,22 +748,27 @@
if (initialFrontier != null) {
+ /*
+ * FIXME Why can't we pass in the Value (with a defined IV)
+ * and not the IV? This should work. Passing in the IV is
+ * against the grain of the API and the generalized
+ * abstraction as Values. Of course, having the IV is
+ * necessary since this is an internal, high performance,
+ * and close to the indices operation.
+ */
+ final IV[] tmp = new IV[initialFrontier.length];
+
// Setup the initial frontier.
+ int i = 0;
for (Value startingVertex : initialFrontier) {
- /*
- * FIXME Why can't we pass in the Value (with a defined
- * IV) and not the IV? This should work. Passing in the
- * IV is against the grain of the API and the
- * generalized abstraction as Values. Of course, having
- * the IV is necessary since this is an internal, high
- * performance, and close to the indices operation.
- */
- gasState.setFrontier(gasContext,
- ((BigdataValue) startingVertex).getIV());
+ tmp[i++] = ((BigdataValue) startingVertex).getIV();
}
+ // set the frontier.
+ gasState.setFrontier(gasContext, tmp);
+
}
// Run the analytic.
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|