[ 
https://issues.apache.org/jira/browse/JENA-1280?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16458038#comment-16458038
 ] 

ASF subversion and git services commented on JENA-1280:
-------------------------------------------------------

Commit 1bd5fdcf3ac0694e0bbabd2f8e63deb92d3c2bff in jena's branch 
refs/heads/master from [~andy.seaborne]
[ https://git-wip-us.apache.org/repos/asf?p=jena.git;h=1bd5fdc ]

JENA-1534: Test for filter-only variables in EXISTS.

Tighten the classifer, assumes proper use of (sequence)
Relates to JENA-1167, JENA-1280.


> JoinClassifer is too cautious with EXISTS variables.
> ----------------------------------------------------
>
>                 Key: JENA-1280
>                 URL: https://issues.apache.org/jira/browse/JENA-1280
>             Project: Apache Jena
>          Issue Type: Bug
>          Components: ARQ
>    Affects Versions: Jena 3.1.1
>            Reporter: Andy Seaborne
>            Assignee: Andy Seaborne
>            Priority: Major
>             Fix For: Jena 3.2.0
>
>
> This query
> {noformat}
> SELECT * {
>    :s :p ?g      # ?g
>    GRAPH ?g {    # ?g
>       :s1 :p1 ?x
>       FILTER EXISTS { ?s ?p ?o }
>    }
> }
> {noformat}
> is not executed as a {{(sequence)}} because there are variables in the 
> {{FILTER}} that appear to be not bound: {{?s}} etc in {{EXISTS}}. If it were 
> a function, this would be correct but {{EXISTS}} is different.
> Variables only in an {{EXISTS}} BGP patterns should not contribute to the 
> unsafe variables of a {{FILTER}}.
> This query:
> {noformat}
> SELECT * {
>    ?s :p ?g      # :s -> ?s
>    GRAPH ?g {
>       :s1 :p1 ?x
>       FILTER EXISTS { ?s ?p ?o }
>    }
> }
> {noformat}
> is not safe to allow {{?s}} to substitute.  This is correctly detected in 
> Jena 3.1.0.



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)

Reply via email to