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

should not be pruning any children

    XMLWordPrintable

    Details

      Description

      This description is rough-and-ready, and is assigned to jeremy to clean up before any other task.

      Using some variant version of bigdata between 1.2.3 and 1.3.0, , and some test data, the following query results in an assertion failure, during static optimization.

      Query:

      PREFIX skos: <http://www.w3.org/2004/02/skos/core#>
      PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#>
      PREFIX rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#>
      PREFIX base: <http://syapse.com/base#>
      PREFIX xsd: <http://www.w3.org/2001/XMLSchema#>
      PREFIX sys: <http://syapse.com/sys#>
      PREFIX owl: <http://www.w3.org/2002/07/owl#>
      PREFIX syapse: <http://localhost:8000/graph/syapse#>
      
      
      select ?missing ?type
      where {
          ?type rdf:type syapse:DjangoClass .
          FILTER ( ?type != syapse:FileRef )
          { select DISTINCT ?missing ?type
            where
            {
              {
                ?predicate rdfs:range ?type.
                ?s ?predicate ?missing .
              }
              UNION
              {
                ?predicate rdfs:domain ?type .
                ?missing ?predicate  ?o .
              }
            }
          }
          FILTER (  
      # The following alternative line is believed to work
      #         NOT EXISTS { ?missing rdf:type ?type }
                NOT EXISTS { ?missing rdf:type / rdfs:subClassOf * ?type }
                 || NOT EXISTS { ?missing syapse:organization ?org }  )
      }
      

      The stacktrace resulting is:

      java.util.concurrent.ExecutionException: java.lang.Exception: java.lang.AssertionError: should not be pruning any children
      	at java.util.concurrent.FutureTask$Sync.innerGet(FutureTask.java:252)
      	at java.util.concurrent.FutureTask.get(FutureTask.java:111)
      	at com.bigdata.rdf.sail.webapp.QueryServlet.doQuery(QueryServlet.java:640)
      	at com.bigdata.rdf.sail.webapp.QueryServlet.doPost(QueryServlet.java:177)
      	at com.bigdata.rdf.sail.webapp.RESTServlet.doPost(RESTServlet.java:206)
      	at javax.servlet.http.HttpServlet.service(HttpServlet.java:727)
      	at javax.servlet.http.HttpServlet.service(HttpServlet.java:820)
      	at org.eclipse.jetty.servlet.ServletHolder.handle(ServletHolder.java:534)
      	at org.eclipse.jetty.servlet.ServletHandler.doHandle(ServletHandler.java:475)
      	at org.eclipse.jetty.server.handler.ContextHandler.doHandle(ContextHandler.java:929)
      	at org.eclipse.jetty.servlet.ServletHandler.doScope(ServletHandler.java:403)
      	at org.eclipse.jetty.server.handler.ContextHandler.doScope(ContextHandler.java:864)
      	at org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:117)
      	at org.eclipse.jetty.server.handler.HandlerList.handle(HandlerList.java:47)
      	at org.eclipse.jetty.server.handler.HandlerWrapper.handle(HandlerWrapper.java:114)
      	at org.eclipse.jetty.server.Server.handle(Server.java:352)
      	at org.eclipse.jetty.server.HttpConnection.handleRequest(HttpConnection.java:596)
      	at org.eclipse.jetty.server.HttpConnection$RequestHandler.headerComplete(HttpConnection.java:1051)
      	at org.eclipse.jetty.http.HttpParser.parseNext(HttpParser.java:599)
      	at org.eclipse.jetty.http.HttpParser.parseAvailable(HttpParser.java:212)
      	at org.eclipse.jetty.server.HttpConnection.handle(HttpConnection.java:426)
      	at org.eclipse.jetty.io.nio.SelectChannelEndPoint.handle(SelectChannelEndPoint.java:508)
      	at org.eclipse.jetty.io.nio.SelectChannelEndPoint.access$000(SelectChannelEndPoint.java:34)
      	at org.eclipse.jetty.io.nio.SelectChannelEndPoint$1.run(SelectChannelEndPoint.java:40)
      	at org.eclipse.jetty.util.thread.QueuedThreadPool$2.run(QueuedThreadPool.java:451)
      	at java.lang.Thread.run(Thread.java:722)
      Caused by: java.lang.Exception: java.lang.AssertionError: should not be pruning any children
      	at com.bigdata.rdf.sail.webapp.BigdataRDFContext$AbstractQueryTask.call(BigdataRDFContext.java:1092)
      	at com.bigdata.rdf.sail.webapp.BigdataRDFContext$AbstractQueryTask.call(BigdataRDFContext.java:454)
      	at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:334)
      	at java.util.concurrent.FutureTask.run(FutureTask.java:166)
      	at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1110)
      	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:603)
      	... 1 more
      Caused by: java.lang.AssertionError: should not be pruning any children
      	at com.bigdata.rdf.sparql.ast.optimizers.ASTJoinOrderByTypeOptimizer.optimizeJoinGroup(ASTJoinOrderByTypeOptimizer.java:644)
      	at com.bigdata.rdf.sparql.ast.optimizers.AbstractJoinGroupOptimizer.optimize(AbstractJoinGroupOptimizer.java:155)
      	at com.bigdata.rdf.sparql.ast.optimizers.AbstractJoinGroupOptimizer.optimize(AbstractJoinGroupOptimizer.java:183)
      	at com.bigdata.rdf.sparql.ast.optimizers.AbstractJoinGroupOptimizer.optimize(AbstractJoinGroupOptimizer.java:95)
      	at com.bigdata.rdf.sparql.ast.optimizers.ASTOptimizerList.optimize(ASTOptimizerList.java:92)
      	at com.bigdata.rdf.sparql.ast.eval.AST2BOpUtility.convert(AST2BOpUtility.java:219)
      	at com.bigdata.rdf.sparql.ast.eval.ASTEvalHelper.evaluateTupleQuery(ASTEvalHelper.java:236)
      	at com.bigdata.rdf.sail.BigdataSailTupleQuery.evaluate(BigdataSailTupleQuery.java:93)
      	at com.bigdata.rdf.sail.BigdataSailTupleQuery.evaluate(BigdataSailTupleQuery.java:75)
      	at org.openrdf.repository.sail.SailTupleQuery.evaluate(SailTupleQuery.java:62)
      	at com.bigdata.rdf.sail.webapp.BigdataRDFContext$TupleQueryTask.doQuery(BigdataRDFContext.java:1211)
      	at com.bigdata.rdf.sail.webapp.BigdataRDFContext$AbstractQueryTask.call(BigdataRDFContext.java:1065)
      	... 6 more
      

        Attachments

          Activity

            People

            Assignee:
            jeremycarroll jeremycarroll
            Reporter:
            jeremycarroll jeremycarroll
            Votes:
            0 Vote for this issue
            Watchers:
            0 Start watching this issue

              Dates

              Created:
              Updated:
              Resolved: