Uploaded image for project: 'Blazegraph (by SYSTAP)'
  1. Blazegraph (by SYSTAP)
  2. BLZG-2090

NPE in com.bigdata.rdf.graph.analytics.SSSP service

    Details

      Description

      Trying to deal with BLZG-2089 I rewrote the path query as:

      PREFIX gas: <http://www.bigdata.com/rdf/gas#>
      
      SELECT ?item ?taxonName ?taxonRank ?parentName ?parentRank ?higherParent WHERE {
        BIND("Rivasmartinezia" AS ?taxonName) .
        BIND(wd:Q34740 AS ?taxonRank) . # Genus
        BIND(wd:Q756 AS ?higherParent) . # Plantae
        ?item wdt:P225 ?taxonName .
        ?item wdt:P105 ?taxonRank .
        ?item wdt:P171/wdt:P225 ?parentName .
        ?item wdt:P171/wdt:P105 ?parentRank .
        SERVICE gas:service {
          gas:program gas:gasClass "com.bigdata.rdf.graph.analytics.SSSP" ;
          gas:in ?item ;
          gas:traversalDirection "Forward" ;
          gas:out ?parent ;
          gas:maxIterations 100 ;
          gas:linkType wdt:171 .
        }
        FILTER(?parent = ?higherParent)
      }
      

      But this produces NPE:

      java.util.concurrent.ExecutionException: java.util.concurrent.ExecutionException: org.openrdf.query.QueryEvaluationException: java.lang.RuntimeException: java.util.concurrent.ExecutionException: java.lang.Exception: task=ChunkTask

      {query=b535d288-0eea-4fd0-bf9a-044988cf0e38,bopId=1,partitionId=-1,sinkId=3,altSinkId=null}

      , cause=java.util.concurrent.ExecutionException: java.util.concurrent.ExecutionException: java.lang.RuntimeException: java.lang.NullPointerException

        Activity

        Hide
        stasmalyshev stasmalyshev added a comment -

        Full backtrace:

        ERROR: SPARQL-QUERY: queryStr=PREFIX gas: <http://www.bigdata.com/rdf/gas#>
        
        SELECT ?item ?taxonName ?taxonRank ?parentName ?parentRank ?higherParent WHERE {
          BIND("Rivasmartinezia" AS ?taxonName) .
          BIND(wd:Q34740 AS ?taxonRank) . # Genus
          BIND(wd:Q756 AS ?higherParent) . # Plantae
          ?item wdt:P225 ?taxonName .
          ?item wdt:P105 ?taxonRank .
          ?item wdt:P171/wdt:P225 ?parentName .
          ?item wdt:P171/wdt:P105 ?parentRank .
          SERVICE gas:service {
            gas:program gas:gasClass "com.bigdata.rdf.graph.analytics.SSSP" ;
            gas:in ?item ;
            gas:traversalDirection "Forward" ;
            gas:out ?parent ;
            gas:maxIterations 100 ;
            gas:linkType wdt:171 .
          }
          FILTER(?parent = ?higherParent)
        }
        java.util.concurrent.ExecutionException: java.util.concurrent.ExecutionException: org.openrdf.query.QueryEvaluationException: java.lang.RuntimeException: java.util.concurrent.ExecutionException: java.lang.Exception: task=ChunkTask{query=2eafbdc5-d85b-4191-98b5-0c2a487db716,bopId=1,partitionId=-1,sinkId=3,altSinkId=null}, cause=java.util.concurrent.ExecutionException: java.util.concurrent.ExecutionException: java.lang.RuntimeException: java.lang.NullPointerException
        	at java.util.concurrent.FutureTask.report(FutureTask.java:122)
        	at java.util.concurrent.FutureTask.get(FutureTask.java:188)
        	at com.bigdata.rdf.sail.webapp.BigdataServlet.submitApiTask(BigdataServlet.java:281)
        	at com.bigdata.rdf.sail.webapp.QueryServlet.doSparqlQuery(QueryServlet.java:653)
        	at com.bigdata.rdf.sail.webapp.QueryServlet.doGet(QueryServlet.java:288)
        	at com.bigdata.rdf.sail.webapp.RESTServlet.doGet(RESTServlet.java:240)
        	at com.bigdata.rdf.sail.webapp.MultiTenancyServlet.doGet(MultiTenancyServlet.java:271)
        	at javax.servlet.http.HttpServlet.service(HttpServlet.java:687)
        	at javax.servlet.http.HttpServlet.service(HttpServlet.java:790)
        	at org.eclipse.jetty.servlet.ServletHolder.handle(ServletHolder.java:808)
        	at org.eclipse.jetty.servlet.ServletHandler.doHandle(ServletHandler.java:587)
        	at org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:143)
        	at org.eclipse.jetty.security.SecurityHandler.handle(SecurityHandler.java:577)
        	at org.eclipse.jetty.server.session.SessionHandler.doHandle(SessionHandler.java:223)
        	at org.eclipse.jetty.server.handler.ContextHandler.doHandle(ContextHandler.java:1127)
        	at org.eclipse.jetty.servlet.ServletHandler.doScope(ServletHandler.java:515)
        	at org.eclipse.jetty.server.session.SessionHandler.doScope(SessionHandler.java:185)
        	at org.eclipse.jetty.server.handler.ContextHandler.doScope(ContextHandler.java:1061)
        	at org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:141)
        	at org.eclipse.jetty.server.handler.ContextHandlerCollection.handle(ContextHandlerCollection.java:215)
        	at org.eclipse.jetty.server.handler.HandlerCollection.handle(HandlerCollection.java:110)
        	at org.eclipse.jetty.server.handler.HandlerWrapper.handle(HandlerWrapper.java:97)
        	at org.eclipse.jetty.server.Server.handle(Server.java:497)
        	at org.eclipse.jetty.server.HttpChannel.handle(HttpChannel.java:310)
        	at org.eclipse.jetty.server.HttpConnection.onFillable(HttpConnection.java:257)
        	at org.eclipse.jetty.io.AbstractConnection$2.run(AbstractConnection.java:540)
        	at org.eclipse.jetty.util.thread.QueuedThreadPool.runJob(QueuedThreadPool.java:635)
        	at org.eclipse.jetty.util.thread.QueuedThreadPool$3.run(QueuedThreadPool.java:555)
        	at java.lang.Thread.run(Thread.java:745)
        Caused by: java.util.concurrent.ExecutionException: org.openrdf.query.QueryEvaluationException: java.lang.RuntimeException: java.util.concurrent.ExecutionException: java.lang.Exception: task=ChunkTask{query=2eafbdc5-d85b-4191-98b5-0c2a487db716,bopId=1,partitionId=-1,sinkId=3,altSinkId=null}, cause=java.util.concurrent.ExecutionException: java.util.concurrent.ExecutionException: java.lang.RuntimeException: java.lang.NullPointerException
        	at java.util.concurrent.FutureTask.report(FutureTask.java:122)
        	at java.util.concurrent.FutureTask.get(FutureTask.java:188)
        	at com.bigdata.rdf.sail.webapp.QueryServlet$SparqlQueryTask.call(QueryServlet.java:864)
        	at com.bigdata.rdf.sail.webapp.QueryServlet$SparqlQueryTask.call(QueryServlet.java:670)
        	at com.bigdata.rdf.task.ApiTaskForIndexManager.call(ApiTaskForIndexManager.java:68)
        	at java.util.concurrent.FutureTask.run(FutureTask.java:262)
        	at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
        	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
        	... 1 more
        Caused by: org.openrdf.query.QueryEvaluationException: java.lang.RuntimeException: java.util.concurrent.ExecutionException: java.lang.Exception: task=ChunkTask{query=2eafbdc5-d85b-4191-98b5-0c2a487db716,bopId=1,partitionId=-1,sinkId=3,altSinkId=null}, cause=java.util.concurrent.ExecutionException: java.util.concurrent.ExecutionException: java.lang.RuntimeException: java.lang.NullPointerException
        	at com.bigdata.rdf.sail.Bigdata2Sesame2BindingSetIterator.hasNext(Bigdata2Sesame2BindingSetIterator.java:188)
        	at info.aduna.iteration.IterationWrapper.hasNext(IterationWrapper.java:68)
        	at org.openrdf.query.QueryResults.report(QueryResults.java:155)
        	at org.openrdf.repository.sail.SailTupleQuery.evaluate(SailTupleQuery.java:76)
        	at com.bigdata.rdf.sail.webapp.BigdataRDFContext$TupleQueryTask.doQuery(BigdataRDFContext.java:1713)
        	at com.bigdata.rdf.sail.webapp.BigdataRDFContext$AbstractQueryTask.innerCall(BigdataRDFContext.java:1569)
        	at com.bigdata.rdf.sail.webapp.BigdataRDFContext$AbstractQueryTask.call(BigdataRDFContext.java:1534)
        	at com.bigdata.rdf.sail.webapp.BigdataRDFContext$AbstractQueryTask.call(BigdataRDFContext.java:747)
        	... 4 more
        Caused by: java.lang.RuntimeException: java.util.concurrent.ExecutionException: java.lang.Exception: task=ChunkTask{query=2eafbdc5-d85b-4191-98b5-0c2a487db716,bopId=1,partitionId=-1,sinkId=3,altSinkId=null}, cause=java.util.concurrent.ExecutionException: java.util.concurrent.ExecutionException: java.lang.RuntimeException: java.lang.NullPointerException
        	at com.bigdata.rdf.sail.RunningQueryCloseableIterator.checkFuture(RunningQueryCloseableIterator.java:59)
        	at com.bigdata.rdf.sail.RunningQueryCloseableIterator.close(RunningQueryCloseableIterator.java:73)
        	at com.bigdata.rdf.sail.RunningQueryCloseableIterator.hasNext(RunningQueryCloseableIterator.java:82)
        	at com.bigdata.striterator.ChunkedWrappedIterator.hasNext(ChunkedWrappedIterator.java:197)
        	at com.bigdata.rdf.sail.Bigdata2Sesame2BindingSetIterator.hasNext(Bigdata2Sesame2BindingSetIterator.java:134)
        	... 11 more
        Caused by: java.util.concurrent.ExecutionException: java.lang.Exception: task=ChunkTask{query=2eafbdc5-d85b-4191-98b5-0c2a487db716,bopId=1,partitionId=-1,sinkId=3,altSinkId=null}, cause=java.util.concurrent.ExecutionException: java.util.concurrent.ExecutionException: java.lang.RuntimeException: java.lang.NullPointerException
        	at com.bigdata.util.concurrent.Haltable.get(Haltable.java:273)
        	at com.bigdata.bop.engine.AbstractRunningQuery.get(AbstractRunningQuery.java:1516)
        	at com.bigdata.bop.engine.AbstractRunningQuery.get(AbstractRunningQuery.java:104)
        	at com.bigdata.rdf.sail.RunningQueryCloseableIterator.checkFuture(RunningQueryCloseableIterator.java:46)
        	... 15 more
        Caused by: java.lang.Exception: task=ChunkTask{query=2eafbdc5-d85b-4191-98b5-0c2a487db716,bopId=1,partitionId=-1,sinkId=3,altSinkId=null}, cause=java.util.concurrent.ExecutionException: java.util.concurrent.ExecutionException: java.lang.RuntimeException: java.lang.NullPointerException
        	at com.bigdata.bop.engine.ChunkedRunningQuery$ChunkTask.call(ChunkedRunningQuery.java:1367)
        	at com.bigdata.bop.engine.ChunkedRunningQuery$ChunkTaskWrapper.run(ChunkedRunningQuery.java:926)
        	at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:471)
        	at java.util.concurrent.FutureTask.run(FutureTask.java:262)
        	at com.bigdata.concurrent.FutureTaskMon.run(FutureTaskMon.java:63)
        	at com.bigdata.bop.engine.ChunkedRunningQuery$ChunkFutureTask.run(ChunkedRunningQuery.java:821)
        	... 3 more
        Caused by: java.util.concurrent.ExecutionException: java.util.concurrent.ExecutionException: java.lang.RuntimeException: java.lang.NullPointerException
        	at java.util.concurrent.FutureTask.report(FutureTask.java:122)
        	at java.util.concurrent.FutureTask.get(FutureTask.java:188)
        	at com.bigdata.bop.engine.ChunkedRunningQuery$ChunkTask.call(ChunkedRunningQuery.java:1347)
        	... 8 more
        Caused by: java.util.concurrent.ExecutionException: java.lang.RuntimeException: java.lang.NullPointerException
        	at java.util.concurrent.FutureTask.report(FutureTask.java:122)
        	at java.util.concurrent.FutureTask.get(FutureTask.java:202)
        	at com.bigdata.bop.controller.ServiceCallJoin$ChunkTask.doServiceCallWithConstant(ServiceCallJoin.java:351)
        	at com.bigdata.bop.controller.ServiceCallJoin$ChunkTask.call(ServiceCallJoin.java:303)
        	at com.bigdata.bop.controller.ServiceCallJoin$ChunkTask.call(ServiceCallJoin.java:215)
        	at java.util.concurrent.FutureTask.run(FutureTask.java:262)
        	at com.bigdata.bop.engine.ChunkedRunningQuery$ChunkTask.call(ChunkedRunningQuery.java:1346)
        	... 8 more
        Caused by: java.lang.RuntimeException: java.lang.NullPointerException
        	at com.bigdata.bop.controller.ServiceCallJoin$ChunkTask$ServiceCallTask.doServiceCall(ServiceCallJoin.java:757)
        	at com.bigdata.bop.controller.ServiceCallJoin$ChunkTask$ServiceCallTask.call(ServiceCallJoin.java:616)
        	at com.bigdata.bop.controller.ServiceCallJoin$ChunkTask$ServiceCallTask.call(ServiceCallJoin.java:552)
        	at java.util.concurrent.FutureTask.run(FutureTask.java:262)
        	... 3 more
        Caused by: java.lang.NullPointerException
        	at com.bigdata.rdf.graph.impl.bd.GASService$GASServiceCall.toIV(GASService.java:912)
        	at com.bigdata.rdf.graph.impl.bd.GASService$GASServiceCall.call(GASService.java:828)
        	at com.bigdata.rdf.graph.impl.bd.GASService$GASServiceCall.call(GASService.java:413)
        	at com.bigdata.bop.controller.ServiceCallJoin$ChunkTask$ServiceCallTask.doBigdataServiceCall(ServiceCallJoin.java:770)
        	at com.bigdata.bop.controller.ServiceCallJoin$ChunkTask$ServiceCallTask.doServiceCall(ServiceCallJoin.java:707)
        	... 6 more
        
        Show
        stasmalyshev stasmalyshev added a comment - Full backtrace: ERROR: SPARQL-QUERY: queryStr=PREFIX gas: <http://www.bigdata.com/rdf/gas#> SELECT ?item ?taxonName ?taxonRank ?parentName ?parentRank ?higherParent WHERE { BIND("Rivasmartinezia" AS ?taxonName) . BIND(wd:Q34740 AS ?taxonRank) . # Genus BIND(wd:Q756 AS ?higherParent) . # Plantae ?item wdt:P225 ?taxonName . ?item wdt:P105 ?taxonRank . ?item wdt:P171/wdt:P225 ?parentName . ?item wdt:P171/wdt:P105 ?parentRank . SERVICE gas:service { gas:program gas:gasClass "com.bigdata.rdf.graph.analytics.SSSP" ; gas:in ?item ; gas:traversalDirection "Forward" ; gas:out ?parent ; gas:maxIterations 100 ; gas:linkType wdt:171 . } FILTER(?parent = ?higherParent) } java.util.concurrent.ExecutionException: java.util.concurrent.ExecutionException: org.openrdf.query.QueryEvaluationException: java.lang.RuntimeException: java.util.concurrent.ExecutionException: java.lang.Exception: task=ChunkTask{query=2eafbdc5-d85b-4191-98b5-0c2a487db716,bopId=1,partitionId=-1,sinkId=3,altSinkId=null}, cause=java.util.concurrent.ExecutionException: java.util.concurrent.ExecutionException: java.lang.RuntimeException: java.lang.NullPointerException at java.util.concurrent.FutureTask.report(FutureTask.java:122) at java.util.concurrent.FutureTask.get(FutureTask.java:188) at com.bigdata.rdf.sail.webapp.BigdataServlet.submitApiTask(BigdataServlet.java:281) at com.bigdata.rdf.sail.webapp.QueryServlet.doSparqlQuery(QueryServlet.java:653) at com.bigdata.rdf.sail.webapp.QueryServlet.doGet(QueryServlet.java:288) at com.bigdata.rdf.sail.webapp.RESTServlet.doGet(RESTServlet.java:240) at com.bigdata.rdf.sail.webapp.MultiTenancyServlet.doGet(MultiTenancyServlet.java:271) at javax.servlet.http.HttpServlet.service(HttpServlet.java:687) at javax.servlet.http.HttpServlet.service(HttpServlet.java:790) at org.eclipse.jetty.servlet.ServletHolder.handle(ServletHolder.java:808) at org.eclipse.jetty.servlet.ServletHandler.doHandle(ServletHandler.java:587) at org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:143) at org.eclipse.jetty.security.SecurityHandler.handle(SecurityHandler.java:577) at org.eclipse.jetty.server.session.SessionHandler.doHandle(SessionHandler.java:223) at org.eclipse.jetty.server.handler.ContextHandler.doHandle(ContextHandler.java:1127) at org.eclipse.jetty.servlet.ServletHandler.doScope(ServletHandler.java:515) at org.eclipse.jetty.server.session.SessionHandler.doScope(SessionHandler.java:185) at org.eclipse.jetty.server.handler.ContextHandler.doScope(ContextHandler.java:1061) at org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:141) at org.eclipse.jetty.server.handler.ContextHandlerCollection.handle(ContextHandlerCollection.java:215) at org.eclipse.jetty.server.handler.HandlerCollection.handle(HandlerCollection.java:110) at org.eclipse.jetty.server.handler.HandlerWrapper.handle(HandlerWrapper.java:97) at org.eclipse.jetty.server.Server.handle(Server.java:497) at org.eclipse.jetty.server.HttpChannel.handle(HttpChannel.java:310) at org.eclipse.jetty.server.HttpConnection.onFillable(HttpConnection.java:257) at org.eclipse.jetty.io.AbstractConnection$2.run(AbstractConnection.java:540) at org.eclipse.jetty.util.thread.QueuedThreadPool.runJob(QueuedThreadPool.java:635) at org.eclipse.jetty.util.thread.QueuedThreadPool$3.run(QueuedThreadPool.java:555) at java.lang.Thread.run(Thread.java:745) Caused by: java.util.concurrent.ExecutionException: org.openrdf.query.QueryEvaluationException: java.lang.RuntimeException: java.util.concurrent.ExecutionException: java.lang.Exception: task=ChunkTask{query=2eafbdc5-d85b-4191-98b5-0c2a487db716,bopId=1,partitionId=-1,sinkId=3,altSinkId=null}, cause=java.util.concurrent.ExecutionException: java.util.concurrent.ExecutionException: java.lang.RuntimeException: java.lang.NullPointerException at java.util.concurrent.FutureTask.report(FutureTask.java:122) at java.util.concurrent.FutureTask.get(FutureTask.java:188) at com.bigdata.rdf.sail.webapp.QueryServlet$SparqlQueryTask.call(QueryServlet.java:864) at com.bigdata.rdf.sail.webapp.QueryServlet$SparqlQueryTask.call(QueryServlet.java:670) at com.bigdata.rdf.task.ApiTaskForIndexManager.call(ApiTaskForIndexManager.java:68) at java.util.concurrent.FutureTask.run(FutureTask.java:262) at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145) at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615) ... 1 more Caused by: org.openrdf.query.QueryEvaluationException: java.lang.RuntimeException: java.util.concurrent.ExecutionException: java.lang.Exception: task=ChunkTask{query=2eafbdc5-d85b-4191-98b5-0c2a487db716,bopId=1,partitionId=-1,sinkId=3,altSinkId=null}, cause=java.util.concurrent.ExecutionException: java.util.concurrent.ExecutionException: java.lang.RuntimeException: java.lang.NullPointerException at com.bigdata.rdf.sail.Bigdata2Sesame2BindingSetIterator.hasNext(Bigdata2Sesame2BindingSetIterator.java:188) at info.aduna.iteration.IterationWrapper.hasNext(IterationWrapper.java:68) at org.openrdf.query.QueryResults.report(QueryResults.java:155) at org.openrdf.repository.sail.SailTupleQuery.evaluate(SailTupleQuery.java:76) at com.bigdata.rdf.sail.webapp.BigdataRDFContext$TupleQueryTask.doQuery(BigdataRDFContext.java:1713) at com.bigdata.rdf.sail.webapp.BigdataRDFContext$AbstractQueryTask.innerCall(BigdataRDFContext.java:1569) at com.bigdata.rdf.sail.webapp.BigdataRDFContext$AbstractQueryTask.call(BigdataRDFContext.java:1534) at com.bigdata.rdf.sail.webapp.BigdataRDFContext$AbstractQueryTask.call(BigdataRDFContext.java:747) ... 4 more Caused by: java.lang.RuntimeException: java.util.concurrent.ExecutionException: java.lang.Exception: task=ChunkTask{query=2eafbdc5-d85b-4191-98b5-0c2a487db716,bopId=1,partitionId=-1,sinkId=3,altSinkId=null}, cause=java.util.concurrent.ExecutionException: java.util.concurrent.ExecutionException: java.lang.RuntimeException: java.lang.NullPointerException at com.bigdata.rdf.sail.RunningQueryCloseableIterator.checkFuture(RunningQueryCloseableIterator.java:59) at com.bigdata.rdf.sail.RunningQueryCloseableIterator.close(RunningQueryCloseableIterator.java:73) at com.bigdata.rdf.sail.RunningQueryCloseableIterator.hasNext(RunningQueryCloseableIterator.java:82) at com.bigdata.striterator.ChunkedWrappedIterator.hasNext(ChunkedWrappedIterator.java:197) at com.bigdata.rdf.sail.Bigdata2Sesame2BindingSetIterator.hasNext(Bigdata2Sesame2BindingSetIterator.java:134) ... 11 more Caused by: java.util.concurrent.ExecutionException: java.lang.Exception: task=ChunkTask{query=2eafbdc5-d85b-4191-98b5-0c2a487db716,bopId=1,partitionId=-1,sinkId=3,altSinkId=null}, cause=java.util.concurrent.ExecutionException: java.util.concurrent.ExecutionException: java.lang.RuntimeException: java.lang.NullPointerException at com.bigdata.util.concurrent.Haltable.get(Haltable.java:273) at com.bigdata.bop.engine.AbstractRunningQuery.get(AbstractRunningQuery.java:1516) at com.bigdata.bop.engine.AbstractRunningQuery.get(AbstractRunningQuery.java:104) at com.bigdata.rdf.sail.RunningQueryCloseableIterator.checkFuture(RunningQueryCloseableIterator.java:46) ... 15 more Caused by: java.lang.Exception: task=ChunkTask{query=2eafbdc5-d85b-4191-98b5-0c2a487db716,bopId=1,partitionId=-1,sinkId=3,altSinkId=null}, cause=java.util.concurrent.ExecutionException: java.util.concurrent.ExecutionException: java.lang.RuntimeException: java.lang.NullPointerException at com.bigdata.bop.engine.ChunkedRunningQuery$ChunkTask.call(ChunkedRunningQuery.java:1367) at com.bigdata.bop.engine.ChunkedRunningQuery$ChunkTaskWrapper.run(ChunkedRunningQuery.java:926) at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:471) at java.util.concurrent.FutureTask.run(FutureTask.java:262) at com.bigdata.concurrent.FutureTaskMon.run(FutureTaskMon.java:63) at com.bigdata.bop.engine.ChunkedRunningQuery$ChunkFutureTask.run(ChunkedRunningQuery.java:821) ... 3 more Caused by: java.util.concurrent.ExecutionException: java.util.concurrent.ExecutionException: java.lang.RuntimeException: java.lang.NullPointerException at java.util.concurrent.FutureTask.report(FutureTask.java:122) at java.util.concurrent.FutureTask.get(FutureTask.java:188) at com.bigdata.bop.engine.ChunkedRunningQuery$ChunkTask.call(ChunkedRunningQuery.java:1347) ... 8 more Caused by: java.util.concurrent.ExecutionException: java.lang.RuntimeException: java.lang.NullPointerException at java.util.concurrent.FutureTask.report(FutureTask.java:122) at java.util.concurrent.FutureTask.get(FutureTask.java:202) at com.bigdata.bop.controller.ServiceCallJoin$ChunkTask.doServiceCallWithConstant(ServiceCallJoin.java:351) at com.bigdata.bop.controller.ServiceCallJoin$ChunkTask.call(ServiceCallJoin.java:303) at com.bigdata.bop.controller.ServiceCallJoin$ChunkTask.call(ServiceCallJoin.java:215) at java.util.concurrent.FutureTask.run(FutureTask.java:262) at com.bigdata.bop.engine.ChunkedRunningQuery$ChunkTask.call(ChunkedRunningQuery.java:1346) ... 8 more Caused by: java.lang.RuntimeException: java.lang.NullPointerException at com.bigdata.bop.controller.ServiceCallJoin$ChunkTask$ServiceCallTask.doServiceCall(ServiceCallJoin.java:757) at com.bigdata.bop.controller.ServiceCallJoin$ChunkTask$ServiceCallTask.call(ServiceCallJoin.java:616) at com.bigdata.bop.controller.ServiceCallJoin$ChunkTask$ServiceCallTask.call(ServiceCallJoin.java:552) at java.util.concurrent.FutureTask.run(FutureTask.java:262) ... 3 more Caused by: java.lang.NullPointerException at com.bigdata.rdf.graph.impl.bd.GASService$GASServiceCall.toIV(GASService.java:912) at com.bigdata.rdf.graph.impl.bd.GASService$GASServiceCall.call(GASService.java:828) at com.bigdata.rdf.graph.impl.bd.GASService$GASServiceCall.call(GASService.java:413) at com.bigdata.bop.controller.ServiceCallJoin$ChunkTask$ServiceCallTask.doBigdataServiceCall(ServiceCallJoin.java:770) at com.bigdata.bop.controller.ServiceCallJoin$ChunkTask$ServiceCallTask.doServiceCall(ServiceCallJoin.java:707) ... 6 more
        Hide
        michaelschmidt michaelschmidt added a comment -

        Here's how to reproduce locally:

        @prefix wdt: <http://prop/> .
        
        <http://www.wikidata.org/entity/Q26902704> wdt:P225 "Rivasmartinezia" .
        <http://www.wikidata.org/entity/Q26902704> wdt:P105 <http://www.wikidata.org/entity/Q34740> .
        <http://www.wikidata.org/entity/Q26902704> wdt:P171 <http://help1> .
        <http://help1> wdt:P225 "Apiaceae" .
        <http://www.wikidata.org/entity/Q26902704> wdt:P171 <http://help2> .
        <http://help2> wdt:P105 <http://www.wikidata.org/entity/Q35409>	 .
        

        with query

        PREFIX gas: <http://www.bigdata.com/rdf/gas#>
        PREFIX wdt: <http://prop/>
        
        SELECT * WHERE {
          BIND("Rivasmartinezia" AS ?taxonName) .
          BIND(<http://www.wikidata.org/entity/Q34740> AS ?taxonRank) . # Genus
          BIND(<http://www.wikidata.org/entity/Q756> AS ?higherParent) . # Plantae
          ?item wdt:P225 ?taxonName .
          ?item wdt:P105 ?taxonRank .
          ?item wdt:P171/wdt:P225 ?parentName .
          ?item wdt:P171/wdt:P105 ?parentRank .
          SERVICE gas:service {
            gas:program gas:gasClass "com.bigdata.rdf.graph.analytics.SSSP" ;
            gas:in ?item ;
            gas:traversalDirection "Forward" ;
            gas:out ?parent ;
            gas:maxIterations 100 ;
            gas:linkType wdt:171 .
          }
          FILTER(?parent = ?higherParent)
        }
        
        Show
        michaelschmidt michaelschmidt added a comment - Here's how to reproduce locally: @prefix wdt: <http: //prop/> . <http: //www.wikidata.org/entity/Q26902704> wdt:P225 "Rivasmartinezia" . <http: //www.wikidata.org/entity/Q26902704> wdt:P105 <http://www.wikidata.org/entity/Q34740> . <http: //www.wikidata.org/entity/Q26902704> wdt:P171 <http://help1> . <http: //help1> wdt:P225 "Apiaceae" . <http: //www.wikidata.org/entity/Q26902704> wdt:P171 <http://help2> . <http: //help2> wdt:P105 <http://www.wikidata.org/entity/Q35409> . with query PREFIX gas: <http: //www.bigdata.com/rdf/gas#> PREFIX wdt: <http: //prop/> SELECT * WHERE { BIND( "Rivasmartinezia" AS ?taxonName) . BIND(<http: //www.wikidata.org/entity/Q34740> AS ?taxonRank) . # Genus BIND(<http: //www.wikidata.org/entity/Q756> AS ?higherParent) . # Plantae ?item wdt:P225 ?taxonName . ?item wdt:P105 ?taxonRank . ?item wdt:P171/wdt:P225 ?parentName . ?item wdt:P171/wdt:P105 ?parentRank . SERVICE gas:service { gas:program gas:gasClass "com.bigdata.rdf.graph.analytics.SSSP" ; gas:in ?item ; gas:traversalDirection "Forward" ; gas:out ?parent ; gas:maxIterations 100 ; gas:linkType wdt:171 . } FILTER(?parent = ?higherParent) }
        Hide
        michaelschmidt michaelschmidt added a comment -

        And here's an even simpler query:

        PREFIX gas: <http://www.bigdata.com/rdf/gas#>
        PREFIX wdt: <http://prop/>
        
        SELECT * WHERE {
          ?item wdt:P225 ?taxonName .
          SERVICE gas:service {
            gas:program gas:gasClass "com.bigdata.rdf.graph.analytics.SSSP" ;
            gas:in ?item ;
            gas:traversalDirection "Forward" ;
            gas:out ?parent ;
            gas:maxIterations 100 ;
            gas:linkType wdt:171 .
          }
        }
        
        Show
        michaelschmidt michaelschmidt added a comment - And here's an even simpler query: PREFIX gas: <http: //www.bigdata.com/rdf/gas#> PREFIX wdt: <http: //prop/> SELECT * WHERE { ?item wdt:P225 ?taxonName . SERVICE gas:service { gas:program gas:gasClass "com.bigdata.rdf.graph.analytics.SSSP" ; gas:in ?item ; gas:traversalDirection "Forward" ; gas:out ?parent ; gas:maxIterations 100 ; gas:linkType wdt:171 . } }
        Hide
        michaelschmidt michaelschmidt added a comment -

        Looking at the code, this use case is currently not supported: the GAS service is a "runFirst" service and does not support injection of variables. This means, by design it is only possible to bind constants inside. Note that we support variable injection in other services (GeoSpatial) – this feature was introduced at some point, but not ported back to all legacy services. For now, I will change the NPE into a proper error message and discuss this issue with Bryan.

        bryanthompson

        Show
        michaelschmidt michaelschmidt added a comment - Looking at the code, this use case is currently not supported: the GAS service is a "runFirst" service and does not support injection of variables. This means, by design it is only possible to bind constants inside. Note that we support variable injection in other services (GeoSpatial) – this feature was introduced at some point, but not ported back to all legacy services. For now, I will change the NPE into a proper error message and discuss this issue with Bryan. bryanthompson
        Hide
        michaelschmidt michaelschmidt added a comment - - edited

        Improved error message in https://github.com/blazegraph/bigdata/pull/494. The extension to support dynamic variable injection is a feature request, opened a new ticket: BLZG-3612. Please review error message improvement.

        Show
        michaelschmidt michaelschmidt added a comment - - edited Improved error message in https://github.com/blazegraph/bigdata/pull/494 . The extension to support dynamic variable injection is a feature request, opened a new ticket: BLZG-3612 . Please review error message improvement.
        Hide
        beebs Brad Bebee added a comment -

        Cherry picked into 2.1.5.

        Show
        beebs Brad Bebee added a comment - Cherry picked into 2.1.5.

          People

          • Assignee:
            michaelschmidt michaelschmidt
            Reporter:
            stasmalyshev stasmalyshev
          • Votes:
            0 Vote for this issue
            Watchers:
            3 Start watching this issue

            Dates

            • Created:
              Updated:
              Resolved: