What scores are you getting? If two documents come back from different
shards with the same score, the order would not be predictable -
probably down to which shard responds first. 

Fix it with something like sort=score,timestamp or some other time
related field.

Upayavira

On Thu, Sep 10, 2015, at 11:01 AM, Modassar Ather wrote:
> To add to my previous observation I saw the response having results from
> multiple shards when the secondary sort field is added and they remain
> same
> across hits.
> Kindly help me understand this behavior. Why the results are changing as
> I
> understand that the result should be first clubbed together from all
> shard
> and then based on their score it should be sorted.
> But here I see that every time I hit the sort query I am getting results
> from different shard which has different scores.
> 
> Thanks,
> Modassar
> 
> On Thu, Sep 10, 2015 at 2:59 PM, Modassar Ather <modather1...@gmail.com>
> wrote:
> 
> > Upayavira! I add the fl=id,score,[shard] and saw the shards changing in
> > the response every time and for different shards the response changes but
> > for the same shard result is same on multiple hits.
> > When I add secondary sort field e.g. score the shard remains same across
> > hits.
> >
> > On Thu, Sep 10, 2015 at 12:52 PM, Upayavira <u...@odoko.co.uk> wrote:
> >
> >> Add fl=id,score,[shard] to your query, and show us the results of two
> >> differing executions.
> >>
> >> Perhaps we will be able to see the cause of the difference.
> >>
> >> Upayavira
> >>
> >> On Thu, Sep 10, 2015, at 05:35 AM, Modassar Ather wrote:
> >> > Thanks Erick. There are no replicas on my cluster and the indexing is
> >> one
> >> > time. No updates or additions are done to the index and the segments are
> >> > optimized at the end of indexing.
> >> > So adding a secondary sort criteria is the only solution for such issue
> >> > in
> >> > sort?
> >> >
> >> > Regards,
> >> > Modassar
> >> >
> >> > On Wed, Sep 9, 2015 at 8:21 PM, Erick Erickson <erickerick...@gmail.com
> >> >
> >> > wrote:
> >> >
> >> > > When the primary sort criteria is identical for two documents,
> >> > > then the _internal_ Lucene document ID is used to break the
> >> > > tie. The internal ID for two docs can be not only different, but
> >> > > in different _order_ on two separate shards. I'm assuming here
> >> > > that  each of your shards has multiple replicas and/or you're
> >> > > continuing to index to your cluster.
> >> > >
> >> > > The relative internal doc IDs for may change even relative to
> >> > > each other when segments get merged.
> >> > >
> >> > > So yes, if you are sorting by something that can be identical
> >> > > in documents, it's always best to specify a secondary sort
> >> > > criteria. It's not referenced unless there's a tie so it's
> >> > > not that expensive. People often use whatever field
> >> > > is defined for <uniqueKey> since that's _guaranteed_ to
> >> > > never be the same for two docs.
> >> > >
> >> > > Best,
> >> > > Erick
> >> > >
> >> > > On Wed, Sep 9, 2015 at 1:45 AM, Modassar Ather <
> >> modather1...@gmail.com>
> >> > > wrote:
> >> > > > Hi,
> >> > > >
> >> > > > Search results are changed every time the following query is hit.
> >> Please
> >> > > > note that it is 7 shard cluster of Solr-5.2.1.
> >> > > >
> >> > > > Query: q=network&start=50&rows=50&sort=f_sort
> >> > > asc&group=true&group.field=id
> >> > > >
> >> > > > Following are the fields and their types in my schema.xml.
> >> > > >
> >> > > > <fieldType name="string" class="solr.StrField"
> >> sortMissingLast="true"
> >> > > > stored="false" omitNorms="true"/>
> >> > > > <fieldType name="string_dv" class="solr.StrField"
> >> sortMissingLast="true"
> >> > > > stored="false" indexed="true" docValues="true"/>
> >> > > >
> >> > > > <field name="id" type="string" stored="true"/>
> >> > > > <dynamicField name="*_sort" type="string_dv"/>
> >> > > >
> >> > > > As per my understanding it seems to be the issue of tie among the
> >> > > document
> >> > > > as when I added a new sort field like below the result never changed
> >> > > across
> >> > > > multiple hits.
> >> > > > q=network&start=50&rows=50&sort=f_sort asc, score
> >> > > > asc&group=true&group.field=id
> >> > > >
> >> > > > Kindly let me know if this is an issue or how this can be fixed.
> >> > > >
> >> > > > Thanks,
> >> > > > Modassar
> >> > >
> >>
> >
> >

Reply via email to