the types are integer.
excellent!
you saved my weekend.

Uwe

Uwe Bartels
Systemarchitect - Freelancer
mailto: uwe.bart...@gmail.com
tel: +49 172 3899006
profile: https://www.xing.com/profile/Uwe_Bartels
website: http://www.uwebartels.com



On 18 February 2011 15:58, Kevin Grittner <kevin.gritt...@wicourts.gov>wrote:

> Uwe Bartels <uwe.bart...@gmail.com> wrote:
>
> > I have a java application which generates inperformant query
> > plans.
>
> > Index Cond: ((lat >= $3) AND (lat <= $4) AND (lon >= $1) AND (lon
> > <= $2))
>
> > Filter: (((lon)::double precision >= $1) AND ((lon)::double
> > precision <= $2) AND ((lat)::double precision >= $3) AND
> > ((lat)::double precision <= $4))
>
> It is the cast of the table columns to double precision which is
> taking the index out of play.
>
> What are the data types of those columns?  What does the code look
> like where you're setting the values for the parameters?  If nothing
> else, writing the query so that the parameters are cast to the right
> type before use might solve the problem, but I would start by
> looking at the object classes used in the Java app.
>
> -Kevin
>

Reply via email to