Hey,

I'm having really weird results when trying to use @geodist.

My setup is pretty standard (I think). I've got a Venue with float lat/
long columns and I've got my indexes as per the Geo-Searching docs:

  define_index do
    indexes name, :sortable => true

    has created_at

    has "RADIANS(latitude)",  :as => :latitude,  :type => :float
    has "RADIANS(longitude)", :as => :longitude, :type => :float

    set_property :delta => true
  end

However, given the following search in the controller (again, as per
the docs):

  @venues = Venue.search(search_terms, :geo => origin, :order =>
"@geodist ASC, @relevance DESC")

The @geodist values (as accessed through sphinx_attributes or via
each_with_geodist) are incredibly high. If I do a search with an
origin I know to be about 2km from the nearest venue, the
corresponding @geodist value is 11752209.0! That value doesn't make
sense as metres, cm, mm, or even nanometres.

I'm very confused by this as I'm pretty much following the geo-
searching docs verbatim here.

AFAICT it is still ordering the results correctly (i.e. nearer venues
have a lower @geodist than far ones).

I'm running sphinx-0.9.9-release, Rails 3.0.3, and TS 2.0.1.

One thing that is possibly related: when I regenerated the sphinx conf
files after adding the lat/long indexes and reindexed, I got the
following output:

  ERROR: index 'venue_core': sql_range_query: ERROR:  column
"venues.latitude" must appear in the GROUP BY clause or be used in an
aggregate function

-- 
You received this message because you are subscribed to the Google Groups 
"Thinking Sphinx" group.
To post to this group, send email to [email protected].
To unsubscribe from this group, send email to 
[email protected].
For more options, visit this group at 
http://groups.google.com/group/thinking-sphinx?hl=en.

Reply via email to