On 8/14/13 2:26 PM, "Jeff Wartes" <jwar...@whitepages.com> wrote:
> >I'm still pondering aggregate-type operations for scoring multi-valued >fields (original thread: http://goo.gl/zOX53f ), and it occurred to me >that distance-sort with SpatialRecursivePrefixTreeFieldType must be doing >something like that. It isn't. > >Somewhat surprisingly I don't see this in the documentation anywhere, but >I presume the example query: (from: >http://wiki.apache.org/solr/SolrAdaptersForLuceneSpatial4) >"q={!geofilt score=distance sfield=geo pt=54.729696,-98.525391 d=10}" > >assigns the distance/score based on the *closest* lat/long if the sfield >is a multi-valued field. Yes it does. > >That's a reasonable default, but it's a bit arbitrary. Can I sort based on >the *furthest* lat/long in the document? Or the average distance? > >Anyone know more about how this works and could give me some pointers? I considered briefly supporting the farthest distance but dismissed it as I saw no real use-case. I didn't think of the average distance; that's plausible. Any way, you're best bet is to dig into the code. The relevant part is ShapeFieldCacheDistanceValueSource. FYI something to keep in mind: https://issues.apache.org/jira/browse/LUCENE-4698 ~ David