On 26-Feb-07, at 11:12 AM, Gene wrote:
> hi!
>
> I've been having some serious performance issues with
> postgresql8.2/hibernate/jdbc due to postgres reusing bad cached query
> plans. It doesn't look at the parameter values and therefore does not
> use any partial indexes.
>
> After trying to set prepareThreshold=0 in the connection string which
> didnt work, even modifying the jdbc driver and forcing it to 0 and not
> working I realized that it must be being ignored. After giving up
> pretty much I tried a much older driver which doesn't use server
> prepared statements at all the problem has gone away and it is once
> again using the partial indexes. How can I get this to work properly
> on the new jdbc driver? I don't really like having to use a 2 year old
> driver to get good performance as you can imagine :)
>
> Could someone point me to a jdbc src file where I could just disable
> server-side prepared statements entirely?
>
you can just add protocolVersion=2 to the url and it will not use
prepared statements.
setting prepareThreshold=0 just tells it not to use named statements.
It will still use statements but won't cache them.
Are you sure the problem is with cached statements ? There are issues
where prepared statements won't use the index if you don't use the
correct type.
Dave
> --
> thanks, G
>
> ---------------------------(end of
> broadcast)---------------------------
> TIP 3: Have you checked our extensive FAQ?
>
> http://www.postgresql.org/docs/faq
>