From: | James Coleman <jtc331(at)gmail(dot)com> |
---|---|
To: | Simon Riggs <simon(at)2ndquadrant(dot)com> |
Cc: | Peter Eisentraut <peter(dot)eisentraut(at)enterprisedb(dot)com>, PostgreSQL Hackers <pgsql-hackers(at)lists(dot)postgresql(dot)org> |
Subject: | Re: Discarding DISCARD ALL |
Date: | 2021-01-20 15:52:55 |
Message-ID: | CAAaqYe_x4Xr5j+9mDFO+xSFzv=K9z6VpWiMFq2=qO7GFdZq=Pw@mail.gmail.com |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-hackers |
On Wed, Jan 20, 2021 at 9:58 AM Simon Riggs <simon(at)2ndquadrant(dot)com> wrote:
>
> On Wed, 20 Jan 2021 at 14:21, James Coleman <jtc331(at)gmail(dot)com> wrote:
>
> > An alternative approach that occurred to me while typing this reply: a
> > setting in Postgres that would disallow setting session level GUCs
> > (i.e., enforce `SET LOCAL` transaction level usage instead) would
> > remove a large chunk of our need to set server_reset_query_always=1
> > (and more interestingly it'd highlight when broken code gets pushed).
> > But even with that, I see some value in the proposed setting since
> > there is additional session state beyond GUCs.
>
> With transaction_cleanup=on we could force all SETs to be SET LOCAL.
>
> The point is that if we declare ahead of time that the transaction
> will be reset then we can act differently and more easily for various
> circumstances, for SETs, for Temp tables and others.
Right, I agree it's independently useful. My "alternative" is a subset
of that functionality and doesn't cover as many cases.
James
From | Date | Subject | |
---|---|---|---|
Next Message | Alvaro Herrera | 2021-01-20 15:54:50 | Re: Allow CLUSTER, VACUUM FULL and REINDEX to change tablespace on the fly |
Previous Message | Alvaro Herrera | 2021-01-20 15:47:07 | Re: Allow CLUSTER, VACUUM FULL and REINDEX to change tablespace on the fly |