Dennis Gove created SOLR-7554:
---------------------------------

             Summary: Add checks in Streams for incoming stream order
                 Key: SOLR-7554
                 URL: https://issues.apache.org/jira/browse/SOLR-7554
             Project: Solr
          Issue Type: Improvement
          Components: SolrJ
    Affects Versions: Trunk, 5.2
            Reporter: Dennis Gove
            Priority: Minor
             Fix For: Trunk, 5.2


Most Streams built on top of other streams require that their incoming 
stream(s) be ordered in a complimentary way to how this stream is expected to 
output its results. 

For example, if a MergeStream is merging two streams on "fieldA asc, fieldB 
desc", then both its incoming streams must be ordered in a similar way. That 
said, the incoming stream could be ordered more strictly, ie "fieldA asc, 
fieldB desc, fieldC asc" but as long as the the comparator used in the 
MergeStream can be "derived from" the incoming stream's comparator then we are 
good to go. 

Some comparator A can be "derived from" some other comparator B iff the fields 
and their order in A is equal to the first fields and their order in B. For 
example, "fieldA asc, fieldB dec"  can be derived from "fieldA asc, fieldB 
desc, fieldC asc, fieldD asc" but cannot be derived from "field A asc".

This patch is to add this validation support. It requires changes to 
Comparators, Equalitors, most Streams, and related tests. It adds a way to 
compare Comparators and Equalitors and in the end is one more required piece 
before we can add support for Join streams.

It is dependent on SOLR-7513 and SOLR-7528. Other dependencies it has have 
already been committed to trunk and the 5.2 branch.

It does not change any interfaces to code already released (5.1 and below). It 
does change interfaces to code in trunk and 5.2.



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

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscr...@lucene.apache.org
For additional commands, e-mail: dev-h...@lucene.apache.org

Reply via email to