[ 
https://issues.apache.org/jira/browse/JENA-90?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Paolo Castagna updated JENA-90:
-------------------------------

    Attachment: ARQ_JENA-90_r1159636.patch

This is a first attempt which I am sharing for feedback (now, more testing is 
necessary... after the lesson learned from JENA-89 :-)).

Another option would have been to replace distinct with reduce via an algebra 
transformation and used the QueryIterDistinctSort in 
OpExecutor.execute(OpReduced, ...) method instead. But I did not see advantages 
in doing so, unless we want to control the optimization via a symbol.

Both are reasonable and very simple... and the tests will be the same.

> Use OpReduce instead of OpDistinct for DISTINCT + ORDER BY queries
> ------------------------------------------------------------------
>
>                 Key: JENA-90
>                 URL: https://issues.apache.org/jira/browse/JENA-90
>             Project: Jena
>          Issue Type: Improvement
>          Components: ARQ
>            Reporter: Paolo Castagna
>            Assignee: Paolo Castagna
>            Priority: Trivial
>              Labels: arq, optimizer, sparql
>         Attachments: ARQ_JENA-90_r1159636.patch
>
>
> ARQ's optimizer could use an OpReduce instead of OpDistinct if a query is 
> DISTINCT + ORDER BY.
> OpReduce removes adjacent duplicates and it does not require a set of already 
> seen bindings as the current OpDistinct implementation does.

--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

Reply via email to