[
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