You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@jena.apache.org by "ASF subversion and git services (JIRA)" <ji...@apache.org> on 2015/01/31 14:15:34 UTC

[jira] [Commented] (JENA-875) Additional optimization for BIND :

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

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

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

Place filters around extend/assign when introduced variables allow it.

JENA-875


> Additional optimization for BIND : 
> -----------------------------------
>
>                 Key: JENA-875
>                 URL: https://issues.apache.org/jira/browse/JENA-875
>             Project: Apache Jena
>          Issue Type: Bug
>          Components: ARQ
>    Affects Versions: Jena 2.12.1
>            Reporter: Andy Seaborne
>            Assignee: Andy Seaborne
>            Priority: Minor
>             Fix For: Jena 2.12.2
>
>
> This is split out from investigation of JENA-874. It is not the cause but was noticed writing the simplified test case.
> With {{(extend))}, the filter-placement optimization can apply filter expressions directly when the {{(extend)}} introduces variables.
> Currently, the  filter-placement optimization only covers expressions pushed inside the {{(extend)}}.
> Example:
> Input:
> {noformat}
> (filter (= ?x 123)
>   (distinct
>     (extend ((?x 123))
>       (bgp (triple ?s ?p ?o)))))
> {noformat}
> The {{distinct}} is just some operation that is betwen the {{(extend)}} nad the outer most level.
> Otherwise, the difference does not show up.
> Current optimization:
> {noformat}
> (filter (= ?x 123)
>   (distinct
>     (extend ((?x 123))
>       (bgp (triple ?s ?p ?o)))))
> {noformat}
> The filter is not placed around the {{(extend)}} but bubbles further up.
> With the improved optimization:
> {noformat}
> (distinct
>   (filter (= ?x 123)
>     (extend ((?x 123))
>       (bgp (triple ?s ?p ?o)))))
> {noformat}
> The filter is placed around the {{(extend)}} at the lowest point possible point.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)