From: | Oliver Jowett <oliver(at)opencloud(dot)com> |
---|---|
To: | Guillaume Cottenceau <gc(at)mnc(dot)ch> |
Cc: | pgsql-jdbc(at)postgresql(dot)org |
Subject: | Re: performance issue |
Date: | 2008-03-27 10:23:40 |
Message-ID: | 47EB75AC.9010902@opencloud.com |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-jdbc |
Guillaume Cottenceau wrote:
> Kris Jurka <books 'at' ejurka.com> writes:
>
>> When using a PreparedStatement the server must come up with a plan
>> that works for all parameter values. Since the parameter is unknown,
>> the generated plan doesn't use an index. Your options are to
>> interpolate the parameter yourself or connect using the
>> protocolVersion=2 URL option which will make the driver do the
>> interpolation prior to passing the query on to the server.
>
> Kris, actually, is this behaviour considered a bug or a feature?
It was discussed at some length recently, check the list archives. IIRC
the consensus was to fix the server - essentially, add a mode where the
driver can tell the server "please replan this statement every time you
get new parameters", which would allow all the normal planner
optimizations (constant folding, etc) to be made since it does not need
to produce a general-purpose plan for all possible parameter values.
-O
From | Date | Subject | |
---|---|---|---|
Next Message | Paul Tomblin | 2008-03-28 01:59:27 | OT - Query for bit pattern |
Previous Message | Guillaume Cottenceau | 2008-03-27 09:09:33 | Re: performance issue |