Re: plan cache doesn't clean plans with references to dropped procedures - Mailing list pgsql-hackers

From Pavel Stehule
Subject Re: plan cache doesn't clean plans with references to dropped procedures
Date
Msg-id CAFj8pRCYux+n=b0PgBY5kZQ3RZCV-vunhyg75yAhm=78fEbMXg@mail.gmail.com
Whole thread Raw
In response to Re: plan cache doesn't clean plans with references to dropped procedures  (Tom Lane <tgl@sss.pgh.pa.us>)
List pgsql-hackers


čt 15. 10. 2020 v 20:17 odesílatel Tom Lane <tgl@sss.pgh.pa.us> napsal:
Pavel Stehule <pavel.stehule@gmail.com> writes:
> I am playing with fixing the speed of CALL statement in a non atomic
> context, and when I tested my patch I found another issue of CALL statement
> - an invalidation of plans doesn't work for CALL statement (in atomic
> context).

Yeah, that's not the plancache's fault.  CALL doesn't register any
dependencies for the parsed expression it keeps in its parsetree.

I remain of the opinion that we need to decide whether CALL is
a utility command or an optimizable statement, and then make it
follow the relevant set of rules.  It can't live halfway between,
especially not when none of the required infrastructure has been
built to allow it to act like an optimizable statement.  (Hm,
I could swear we discussed this before, but searching the archives
doesn't immediately turn up the thread.  Anyway, you don't get to
do parse analysis in advance of execution when you are a utility
command.)

Probably the only feasible fix for the back branches is to go in the
utility-command direction, which means ripping out the pre-parsed
expression in CallStmt.  Somebody could look at making it act like an
optimizable statement in the future; but that'll involve touching a
nontrivial amount of code, and I'm not sure how much performance it'll
really buy.

Maybe I wrote necessary code (or some part) for LET statement


Anyway, I think another related issue will be in work with optimized (cached) target.



                        regards, tom lane

pgsql-hackers by date:

Previous
From: Tom Lane
Date:
Subject: Re: plan cache doesn't clean plans with references to dropped procedures
Next
From: Andy Fan
Date:
Subject: Re: improve the algorithm cached_plan_cost with real planning time?