From: | Laurenz Albe <laurenz(dot)albe(at)cybertec(dot)at> |
---|---|
To: | Robert Haas <robertmhaas(at)gmail(dot)com>, Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us> |
Cc: | Andres Freund <andres(at)anarazel(dot)de>, Adam Brusselback <adambrusselback(at)gmail(dot)com>, Pg Hackers <pgsql-hackers(at)postgresql(dot)org> |
Subject: | Re: Discussion on missing optimizations |
Date: | 2017-10-12 07:22:27 |
Message-ID: | 1507792947.3007.1.camel@cybertec.at |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-hackers |
Robert Haas wrote:
> One trick that some system use is avoid replanning as much as we do
> by, for example, saving plans in a shared cache and reusing them even
> in other sessions. That's hard to do in our architecture because the
> controlling GUCs can be different in every session and there's not
> even any explicit labeling of which GUCs control planner behavior. But
> if you had it, then extra planning cycles would be, perhaps, more
> tolerable.
From my experience with Oracle I would say that that is a can of worms.
Perhaps it really brings the performance benefits they claim, but
a) there have been a number of bugs where the wrong plan got used
(you have to keep several plans for the same statement around,
since - as you say - different sessions have different environments)
b) it is a frequent problem that this shared memory area grows
too large if the application does not use prepared statements
but dynamic SQL with varying constants.
Yours,
Laurenz Albe
From | Date | Subject | |
---|---|---|---|
Next Message | Laurenz Albe | 2017-10-12 07:27:45 | Re: Omission in GRANT documentation |
Previous Message | Michael Paquier | 2017-10-12 05:59:52 | Re: replace GrantObjectType with ObjectType |