Steven Schlansker <ste...@likeness.com> writes:
> It's been covered a few times in the past,
> http://www.postgresql.org/message-id/banlktimft4ohqkb6y7m4wqrffpwnutp...@mail.gmail.com
> http://postgresql.1045698.n5.nabble.com/partial-indexes-not-used-on-parameterized-queries-td2121027.html
> but in a nutshell, partial indices do not play nicely with prepared
> statements because whether the index is valid or not cannot be known
> at query plan time.

This should be pretty much a non-issue in 9.2 and up; if the partial
index is actually useful enough to be worth worrying about, the
plancache choice logic will realize that it should use custom not
generic plans.

http://git.postgresql.org/gitweb/?p=postgresql.git&a=commitdiff&h=e6faf910d

You might still have an issue if the partial index is only sometimes
usable --- the choice logic might decide to go for the generic-plan
approach anyway.  But if you've got a case where the optimal plan
is all over the map like that, I wonder why you're using a prepared
statement at all ...

                        regards, tom lane


-- 
Sent via pgsql-general mailing list (pgsql-general@postgresql.org)
To make changes to your subscription:
http://www.postgresql.org/mailpref/pgsql-general

Reply via email to