Details

    • Type: Sub-task
    • Status: Done
    • Priority: Medium
    • Resolution: Done
    • Affects Version/s: None
    • Fix Version/s: BLAZEGRAPH_2_0_0
    • Component/s: None
    • Labels:
      None

      Description

      The following (non-sense) query

      Select *
      where {	
          FILTER (?a >= "1"^^xsd:unsignedLong)
          FILTER (?b >= "1"^^xsd:unsignedLong)
      }
      

      yields an exception on current master:

      java.util.concurrent.ExecutionException: org.openrdf.query.MalformedQueryException: IV not resolved : "1"^^ at java.util.concurrent.FutureTask.report(FutureTask.java:122) at java.util.concurrent.FutureTask.get(FutureTask.java:192) at com.bigdata.rdf.sail.webapp.BigdataServlet.submitApiTask(BigdataServlet.java:281) at com.bigdata.rdf.sail.webapp.QueryServlet.doSparqlQuery(QueryServlet.java:636) at com.bigdata.rdf.sail.webapp.QueryServlet.doPost(QueryServlet.java:263) at com.bigdata.rdf.sail.webapp.RESTServlet.doPost(RESTServlet.java:248) at com.bigdata.rdf.sail.webapp.MultiTenancyServlet.doPost(MultiTenancyServlet.java:173) at javax.servlet.http.HttpServlet.service(HttpServlet.java:707) at javax.servlet.http.HttpServlet.service(HttpServlet.java:790) at org.eclipse.jetty.servlet.ServletHolder.handle(ServletHolder.java:769) at org.eclipse.jetty.servlet.ServletHandler.doHandle(ServletHandler.java:585) 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:1125) 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:1059) 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:311) at org.eclipse.jetty.server.HttpConnection.onFillable(HttpConnection.java:248) at org.eclipse.jetty.io.AbstractConnection$2.run(AbstractConnection.java:540) at org.eclipse.jetty.util.thread.QueuedThreadPool.runJob(QueuedThreadPool.java:610) at org.eclipse.jetty.util.thread.QueuedThreadPool$3.run(QueuedThreadPool.java:539) at java.lang.Thread.run(Thread.java:745) Caused by: org.openrdf.query.MalformedQueryException: IV not resolved : "1"^^ at com.bigdata.rdf.sail.sparql.Bigdata2ASTSPARQLParser.buildQueryModel(Bigdata2ASTSPARQLParser.java:437) at com.bigdata.rdf.sail.sparql.Bigdata2ASTSPARQLParser.parseQuery2(Bigdata2ASTSPARQLParser.java:359) at com.bigdata.rdf.sail.webapp.BigdataRDFContext.getQueryTask(BigdataRDFContext.java:2400) at com.bigdata.rdf.sail.webapp.QueryServlet$SparqlQueryTask.call(QueryServlet.java:713) at com.bigdata.rdf.sail.webapp.QueryServlet$SparqlQueryTask.call(QueryServlet.java:653) at com.bigdata.rdf.task.ApiTaskForIndexManager.call(ApiTaskForIndexManager.java:68) at java.util.concurrent.FutureTask.run(FutureTask.java:266) at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142) at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617) ... 1 more Caused by: com.bigdata.rdf.sail.sparql.ast.VisitorException: IV not resolved : "1"^^ at com.bigdata.rdf.sail.sparql.BigdataASTVisitorBase.makeIV(BigdataASTVisitorBase.java:145) at com.bigdata.rdf.sail.sparql.BigdataASTVisitorBase.visit(BigdataASTVisitorBase.java:215) at com.bigdata.rdf.sail.sparql.BigdataASTVisitorBase.visit(BigdataASTVisitorBase.java:63) at com.bigdata.rdf.sail.sparql.ast.ASTRDFLiteral.jjtAccept(ASTRDFLiteral.java:28) at com.bigdata.rdf.sail.sparql.ValueExprBuilder.right(ValueExprBuilder.java:171) at com.bigdata.rdf.sail.sparql.ValueExprBuilder.binary(ValueExprBuilder.java:208) at com.bigdata.rdf.sail.sparql.ValueExprBuilder.visit(ValueExprBuilder.java:376) at com.bigdata.rdf.sail.sparql.ValueExprBuilder.visit(ValueExprBuilder.java:142) at com.bigdata.rdf.sail.sparql.ast.ASTCompare.jjtAccept(ASTCompare.java:27) at com.bigdata.rdf.sail.sparql.GroupGraphPatternBuilder.visit(GroupGraphPatternBuilder.java:680) at com.bigdata.rdf.sail.sparql.GroupGraphPatternBuilder.visit(GroupGraphPatternBuilder.java:95) at com.bigdata.rdf.sail.sparql.ast.ASTConstraint.jjtAccept(ASTConstraint.java:24) at com.bigdata.rdf.sail.sparql.ast.SimpleNode.childrenAccept(SimpleNode.java:153) at com.bigdata.rdf.sail.sparql.ASTVisitorBase.visit(ASTVisitorBase.java:274) at com.bigdata.rdf.sail.sparql.ast.ASTBasicGraphPattern.jjtAccept(ASTBasicGraphPattern.java:24) at com.bigdata.rdf.sail.sparql.ast.SimpleNode.childrenAccept(SimpleNode.java:153) at com.bigdata.rdf.sail.sparql.ASTVisitorBase.visit(ASTVisitorBase.java:442) at com.bigdata.rdf.sail.sparql.GroupGraphPatternBuilder.visit(GroupGraphPatternBuilder.java:158) at com.bigdata.rdf.sail.sparql.GroupGraphPatternBuilder.visit(GroupGraphPatternBuilder.java:95) at com.bigdata.rdf.sail.sparql.ast.ASTGraphPatternGroup.jjtAccept(ASTGraphPatternGroup.java:24) at com.bigdata.rdf.sail.sparql.BigdataExprBuilder.handleWhereClause(BigdataExprBuilder.java:740) at com.bigdata.rdf.sail.sparql.BigdataExprBuilder.visit(BigdataExprBuilder.java:179) at com.bigdata.rdf.sail.sparql.BigdataExprBuilder.visit(BigdataExprBuilder.java:120) at com.bigdata.rdf.sail.sparql.ast.ASTSelectQuery.jjtAccept(ASTSelectQuery.java:25) at com.bigdata.rdf.sail.sparql.BigdataExprBuilder.visit(BigdataExprBuilder.java:149) at com.bigdata.rdf.sail.sparql.BigdataExprBuilder.visit(BigdataExprBuilder.java:120) at com.bigdata.rdf.sail.sparql.ast.ASTQueryContainer.jjtAccept(ASTQueryContainer.java:25) at com.bigdata.rdf.sail.sparql.Bigdata2ASTSPARQLParser.buildQueryModel(Bigdata2ASTSPARQLParser.java:433) ... 9 more 
      

      This is most likely related to the parser refactoring. Note that the query works fine if the FILTER is present only once. The original query is somewhat more complex, where the FILTER for the same constant is used in two different parts of a UNION, we should also have a test case for that scenario.

        Attachments

          Issue Links

            Activity

              People

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

                Dates

                Created:
                Updated:
                Resolved: