| 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: | Whole Thread | Raw Message | 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 |