From: Michael Fuhr <mike@fuhr.org>
To: pgsql-sql@postgresql.org
Subject: Re: Radius of a zip code
Date: Fri, 26 Dec 2003 22:19:52 -0700
Message-ID: <20031226221952.A5600@quality.qadas.com> (raw)
In-Reply-To: <20031227043404.GB5264@wolff.to>
References: <000b01c3cc09$e043fd70$0201a8c0@andy2>
<20031226194244.A15916@quality.qadas.com>
<20031227043404.GB5264@wolff.to>
On Fri, Dec 26, 2003 at 10:34:04PM -0600, Bruno Wolff III wrote:
> On Fri, Dec 26, 2003 at 19:42:44 -0700,
> Michael Fuhr <mike@fuhr.org> wrote:
> >
> > I have several databases with lat/lon coordinates and frequently make
> > "show me all records within a certain distance of this point" queries.
> > I wrote a haversine() function that uses the Haversine Formula to
> > calculate the great circle distance between two points on a sphere
> > (assuming the earth is a perfect sphere is accurate enough for my uses).
> > Here's a web site with related info:
>
> The distance operator in contrib/earthdistance got changed to use
> haversine instead of the naive formula in 7.3. In 7.4 it also provides
> some functions that work with contrib/cube that allow for indexed
> searches.
I'll have to take a closer look at contrib/earthdistance. I'm using the
function I wrote for legacy reasons -- I had ported an application from
another DBMS to PostgreSQL and wanted to make as few changes as possible,
so I ported the haversine() function that I had already written.
Incidentally, I see the following in README.earthdistance:
A note on testing C extensions - it seems not enough to drop a function
and re-create it - if I change a function, I have to stop and restart
the backend for the new version to be seen. I guess it would be too
messy to track which functions are added from a .so and do a dlclose
when the last one is dropped.
Maybe you've already figured it out, but LOAD should allow you to reload
a .so file without having to restart the backend.
http://www.postgresql.org/docs/current/static/sql-load.html
--
Michael Fuhr
http://www.fuhr.org/~mfuhr/
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Reply to all the recipients using the --to and --cc options:
reply via email
To: pgsql-sql@postgresql.org
Cc: mike@fuhr.org
Subject: Re: Radius of a zip code
In-Reply-To: <20031226221952.A5600@quality.qadas.com>
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
This inbox is served by DDX for PostgreSQL; see mirroring instructions
for how to clone and mirror all data and code used for this inbox