Hi all,

 I've been thinking about redesigning the facet.sort parameter (mostly because
of the issues arising from SOLR-764). I'll briefly outline my concerns.

- facet.sort=false and facet.sort=true don't do what one would intuitively think
  they do -- both return the facets sorted, just how they're sorted is different
- sorting by term order is probably only used because it also happens to sort
  lexicographically -- the Luncene-internal term number shouldn't be used for
  anything by application programmers IMHO
- facet.sort=false, i.e. sort by term order, is meaningless in a distributed
  setup as there are no distributed term numbers

The redesign I propose is changing the facet.sort parameter from a boolean to a
string and explicitely specify the sort method (with a default method if the
parameter isn't specified). You'd use facet.sort=count to sort by facet count
and something like facet.sort=lex to sort lexicographically. This would be using
term order internally, but not expose it. This redesign would also increase the
flexibility as more sort methods can be added easily.

What does everybody think?

Lars

Reply via email to