Details

      Description

      Consider the following query, with two commented out property paths.

      SELECT (COUNT as ?CNT)
      WHERE {
      { ?Sample_A rdf:type # /rdfs:subClassOf*
      base:TissueSample .
      ?Sample_A base:hasSubject ?Subject_B.
      }
      { ?Subject_B rdf:type # / rdfs:subClassOf*
      base:HumanSubject
      }
      }

      On my dataset, this query responds with 33.
      Uncommenting one or other of the property paths also leaves the answer as 33
      Uncommenting both reduces the answer to 0.

      I will replicate with noddy data, and commit a test case

        Activity

        Hide
        jeremycarroll jeremycarroll added a comment -

        Test case added to r7384:
        bigdata-rdf/src/test/com/bigdata/rdf/sparql/ast/eval/TestTwoPropertyPaths734.java
        and ancillary files

        Show
        jeremycarroll jeremycarroll added a comment - Test case added to r7384: bigdata-rdf/src/test/com/bigdata/rdf/sparql/ast/eval/TestTwoPropertyPaths734.java and ancillary files
        Hide
        jeremycarroll jeremycarroll added a comment -

        I have added quite a lot of tests around this issue, including work-arounds that are good enough for me, for now.

        These are on the BIGDATA_RELEASE_1_2_0 branch commit 7386

        I am guessing that the problem is somewhere in:

        com.bigdata.bop.paths.ArbitraryLengthPathOp.ArbitraryLengthPathTask

        In particular, I was surprised to observe that forcing
        ArbitraryLengthPathTask.chooseGearing(IBindingSet[])
        to always choose forwardGearing does not work.

        Show
        jeremycarroll jeremycarroll added a comment - I have added quite a lot of tests around this issue, including work-arounds that are good enough for me, for now. These are on the BIGDATA_RELEASE_1_2_0 branch commit 7386 I am guessing that the problem is somewhere in: com.bigdata.bop.paths.ArbitraryLengthPathOp.ArbitraryLengthPathTask In particular, I was surprised to observe that forcing ArbitraryLengthPathTask.chooseGearing(IBindingSet[]) to always choose forwardGearing does not work.
        Hide
        jeremycarroll jeremycarroll added a comment -

        I have found that the work-arounds for the test cases do not work 'for real' ... I will look more at the plausibly defective code

        Show
        jeremycarroll jeremycarroll added a comment - I have found that the work-arounds for the test cases do not work 'for real' ... I will look more at the plausibly defective code
        Hide
        jeremycarroll jeremycarroll added a comment -

        SELECT ( 1 as ?X )
        {
        <ex:a> <ex>* <ex:a>
        }
        is a minimal failing test case.
        This should have one solution, even with no data

        Show
        jeremycarroll jeremycarroll added a comment - SELECT ( 1 as ?X ) { <ex:a> <ex >* <ex:a> } is a minimal failing test case. This should have one solution, even with no data
        Hide
        jeremycarroll jeremycarroll added a comment -

        Fix in r7390
        reassigning to mike for verification.
        The com.bigdata.bop tests all pass, and the com.bigdata.rdf.sparql.ast.eval.TestAll
        tests have the same two failing TCK tests as before.
        The new tests all pass. The change in the source code is the new method:
        com.bigdata.bop.paths.ArbitraryLengthPathOp.ArbitraryLengthPathTask.canBind(Gearing, IBindingSet, IConstant<?>)

        Show
        jeremycarroll jeremycarroll added a comment - Fix in r7390 reassigning to mike for verification. The com.bigdata.bop tests all pass, and the com.bigdata.rdf.sparql.ast.eval.TestAll tests have the same two failing TCK tests as before. The new tests all pass. The change in the source code is the new method: com.bigdata.bop.paths.ArbitraryLengthPathOp.ArbitraryLengthPathTask.canBind(Gearing, IBindingSet, IConstant<?>)

          People

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

            Dates

            • Created:
              Updated:
              Resolved: