That's what it is supposed to do. It would hardly be possible to "prepare" a query at all if we had to wait till EXECUTE to find out which tables it was supposed to use.
An alternative would be to flush dependent plans when the schema search path is changed. In effect this would mean flushing *all* prepared plans whenever the search path changes: we could perhaps keep plans that only contain explicit namespace references, but that seems fragile.
Flushing all plans might well be a cure that is worth than the disease, at least for a lot of users.
-Neil
---------------------------(end of broadcast)--------------------------- TIP 4: Don't 'kill -9' the postmaster