From: | Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us> |
---|---|
To: | Simon Riggs <simon(at)2ndquadrant(dot)com> |
Cc: | Catalin Iacob <iacobcatalin(at)gmail(dot)com>, Michael Paquier <michael(dot)paquier(at)gmail(dot)com>, "Tsunakawa, Takayuki" <tsunakawa(dot)takay(at)jp(dot)fujitsu(dot)com>, Ashutosh Bapat <ashutosh(dot)bapat(at)enterprisedb(dot)com>, "pgsql-hackers(at)postgresql(dot)org" <pgsql-hackers(at)postgresql(dot)org> |
Subject: | Re: [bug fix] Savepoint-related statements terminates connection |
Date: | 2017-09-07 18:31:37 |
Message-ID: | 29156.1504809097@sss.pgh.pa.us |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-hackers |
Simon Riggs <simon(at)2ndquadrant(dot)com> writes:
> I would like to relax the restriction to allow this specific use case...
> SET work_mem = X; SET max_parallel_workers = 4; SELECT ...
> so we still have only one command (the last select), yet we have
> multiple GUC settings beforehand.
On what basis do you claim that's only one command? It would return
multiple CommandCompletes, for starters, so that it breaks the protocol
just as effectively as any other loosening.
Moreover, I imagine the semantics you really want is that the SETs only
apply for the duration of the command. This wouldn't provide that
result either.
Haas' idea of some kind of syntactic extension, like "LET guc1 = x,
guc2 = y FOR statement" seems more feasible to me. I'm not necessarily
wedded to that particular syntax, but I think it has to look like
a single-statement construct of some kind.
regards, tom lane
From | Date | Subject | |
---|---|---|---|
Next Message | Tom Lane | 2017-09-07 18:53:00 | Re: assorted code cleanup |
Previous Message | Tom Lane | 2017-09-07 18:24:26 | Re: [bug fix] Savepoint-related statements terminates connection |