: So I think when I was paging through the results, if the query for page N
: was handled by replica1 and page N+1 handled by replica2, and the page
: boundary happened to be where the reversed rows were, this would produce
: the behavior I was seeing where the last row from the previous page was
: also the first row from the next page.

Right, this can actually happen even in a single solr node. 

when 2 docs have identical sort values, the final ordering is 
non-deterministic -- they usually come back in "index" order (the order 
that they appear in the segments on disk) but that's not garunteed.  In 
particular if you have concurrent index updates that cause segment merges 
the order of documents can change (even if those updates don't directly 
affect the docs being reutrned).

If you want to ensure that docs with equal sort values are returned in a 
consistent order across pagination (in either single or multi-node setups) 
you have to have a "tie breaker" sort of some kind -- the uniquekey can be 
useul here.



-Hoss
http://www.lucidworks.com/

Reply via email to