Re: Suggestion: Issue warning when calling SET TRANSACTION outside transaction block
От | Bruce Momjian |
---|---|
Тема | Re: Suggestion: Issue warning when calling SET TRANSACTION outside transaction block |
Дата | |
Msg-id | 20131118204210.GD28149@momjian.us обсуждение исходный текст |
Ответ на | Re: Suggestion: Issue warning when calling SET TRANSACTION outside transaction block (Robert Haas <robertmhaas@gmail.com>) |
Ответы |
Re: Suggestion: Issue warning when calling SET TRANSACTION outside
transaction block
|
Список | pgsql-hackers |
On Sat, Nov 9, 2013 at 02:15:52PM -0500, Robert Haas wrote: > On Fri, Nov 8, 2013 at 5:36 PM, Tom Lane <tgl@sss.pgh.pa.us> wrote: > > [ I'm so far behind ... ] > > > > Bruce Momjian <bruce@momjian.us> writes: > >> Applied. Thank you for all your suggestions. > > > > I thought the suggestion had been to issue a *warning*. How did that > > become an error? This patch seems likely to break applications that > > may have just been harmlessly sloppy about when they were issuing > > SETs and/or what flavor of SET they use. We don't for example throw > > an error for START TRANSACTION with an open transaction or COMMIT or > > ROLLBACK without one --- how can it possibly be argued that these > > operations are more dangerous than those cases? > > > > I'd personally have voted for using NOTICE. > > Well, LOCK TABLE throws an error, so it's not without precedent. Yeah, I just copied the LOCK TABLE usage. You could argue that SET SESSION ISOLATION only affects later commands and doesn't do something like LOCK, so it should be a warning. Not sure how to interpret the COMMIT/ROLLBACK behavior you mentioned. Considering we are doing this outside of a transaction, and WARNING or ERROR is pretty much the same, from a behavioral perspective. Should we change this and LOCK to be a warning? -- Bruce Momjian <bruce@momjian.us> http://momjian.us EnterpriseDB http://enterprisedb.com + Everyone has their own god. +
В списке pgsql-hackers по дате отправления: