Re: Re: Prepared statements fail after schema changes with surprising error

Dimitri Fontaine <dimitri@2ndquadrant.fr>

From: Dimitri Fontaine <dimitri@2ndQuadrant.fr>
To: Andres Freund <andres@2ndquadrant.com>
Cc: Tom Lane <tgl@sss.pgh.pa.us>, Peter van Hardenberg <pvh@pvh.ca>, Peter Geoghegan <peter.geoghegan86@gmail.com>, "pgsql-hackers\@postgresql.org Hackers" <pgsql-hackers@postgresql.org>
Date: 2013-01-22T14:51:38Z
Lists: pgsql-hackers
Andres Freund <andres@2ndquadrant.com> writes:
> On 2013-01-22 14:24:26 +0100, Dimitri Fontaine wrote:
>> Tom Lane <tgl@sss.pgh.pa.us> writes:
>> >> DROP SCHEMA public;
>> >> CREATE SCHEMA public;
>> >
>> > changes the OID of schema public, whereas the search_path that's cached
>> > for the cached plan is cached in terms of OIDs.  So while there is a
>> > table named public.z1 at the end of the sequence, it's not in any schema
>> > found in the cached search path.
>> 
>> The DROP SCHEMA should invalidate the cached plan, certainly?
>
> Afaics the error happens during replanning of the invalidated plan.

Oh, replaning with the cached search_path even when the invalidation
came from a DROP SCHEMA, you mean? Do we have enough information to make
that case appart?

Regards,
-- 
Dimitri Fontaine
http://2ndQuadrant.fr     PostgreSQL : Expertise, Formation et Support