Jeremy Coulon created JENA-1877:
-----------------------------------

             Summary: Wrong results for non-optimized query
                 Key: JENA-1877
                 URL: https://issues.apache.org/jira/browse/JENA-1877
             Project: Apache Jena
          Issue Type: Bug
          Components: ARQ
    Affects Versions: Jena 3.14.0
            Reporter: Jeremy Coulon
         Attachments: bnode01.rq, data.ttl

I noticed that the attached query gives correct results with:
{noformat}
./bin/arq --data=data.ttl --query=bnode01.rq --explain --optimize=on
{noformat}
while it gives wrong results with:
{noformat}
./bin/arq --data=data.ttl --query=bnode01.rq --explain --optimize=off{noformat}
Without optimization, ARQ algebra has 2 different 'extend' op with 'bnode(?s)' 
expression.

With optimization, ARQ algebra merges these ops into a single op 'extend'.

 

I tried debugging and I think that 'E_BNode.evalSpecial()' takes the same 
'binding' object for each call in optimized mode but different 'binding' 
objects for non-optimized mode. This function relies on reference-equality.

 

[^data.ttl]

[^bnode01.rq]



--
This message was sent by Atlassian Jira
(v8.3.4#803005)

Reply via email to