[
https://issues.apache.org/jira/browse/JENA-771?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14115377#comment-14115377
]
Andy Seaborne commented on JENA-771:
------------------------------------
Yes - if the filter placement is done before (as it was in 2.11.0), the
expression is broken up into a sequence that does not have nested filters. The
problem with the processing of outer filters then does not arise.
> TransformExpandOneOf is not applied as expected
> -----------------------------------------------
>
> Key: JENA-771
> URL: https://issues.apache.org/jira/browse/JENA-771
> Project: Apache Jena
> Issue Type: Bug
> Components: ARQ
> Affects Versions: Jena 2.12.0
> Reporter: Rob Vesse
> Assignee: Andy Seaborne
> Labels: optimizer, sparql
> Fix For: Jena 2.12.1
>
>
> We ran into a strange case where {{TransformExpandOneOf}} doesn't appear to
> get applied properly.
> Consider the following query:
> {noformat}
> SELECT ?x
> WHERE
> {
> FILTER(true)
> {
> SELECT ?x
> WHERE
> {
> FILTER (?x NOT IN (1, 2, 3))
> }
> }
> }
> {noformat}
> Which produces the following algebra:
> {noformat}
> (project (?x)
> (project (?x)
> (filter (exprlist true (notin ?x 1 2 3))
> (table unit))))
> {noformat}
> Note that the {{NOT IN}} was left in the expression form rather than being
> expanded to the equivalent {{!=}} expressions.
> If the first {{FILTER}} line is commented out then the following algebra is
> produced:
> {noformat}
> (project (?x)
> (project (?x)
> (filter (exprlist (!= ?x 1) (!= ?x 2) (!= ?x 3))
> (table unit))))
> {noformat}
> So it looks like there is something going on that somehow blocks
> {{TransformExpandOneOf}} from working when another filter is present in the
> outer query. Possibly this is something related to filter placement?
> This problem occurs as far back as 2.11.1 and can be reproduced with 2.11.2,
> 2.12.0 and current trunk. It does not appear in 2.11.0 so must have been
> introduced in 2.11.1
--
This message was sent by Atlassian JIRA
(v6.2#6252)