Re: different clients, different query plans

From: "Kevin Grittner" <Kevin(dot)Grittner(at)wicourts(dot)gov>
To: "Uwe Bartels" <uwe(dot)bartels(at)gmail(dot)com>, <pgsql-performance(at)postgresql(dot)org>
Subject: Re: different clients, different query plans
Date: 2011-02-18 14:58:29
Message-ID: 4D5E34B5020000250003AD10@gw.wicourts.gov
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-performance

Uwe Bartels <uwe(dot)bartels(at)gmail(dot)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

In response to

Responses

Browse pgsql-performance by date

  From Date Subject
Next Message Uwe Bartels 2011-02-18 15:06:12 Re: different clients, different query plans
Previous Message Uwe Bartels 2011-02-18 14:29:01 different clients, different query plans