Re: Suggestion: Issue warning when calling SET TRANSACTION outside transaction block - Mailing list pgsql-hackers

From Robert Haas
Subject Re: Suggestion: Issue warning when calling SET TRANSACTION outside transaction block
Date
Msg-id CA+TgmoY7Wd_sKvcoMy9uT+wV1z096Q10CdXy8pg0CJ4PvtcYrw@mail.gmail.com
Whole thread Raw
In response to Re: Suggestion: Issue warning when calling SET TRANSACTION outside transaction block  (Bruce Momjian <bruce@momjian.us>)
Responses Re: Suggestion: Issue warning when calling SET TRANSACTION outside transaction block  (Bruce Momjian <bruce@momjian.us>)
List pgsql-hackers
On Mon, Nov 25, 2013 at 7:19 PM, Bruce Momjian <bruce@momjian.us> wrote:
> On Fri, Nov 22, 2013 at 01:19:55PM -0500, Bruce Momjian wrote:
>> On Fri, Nov 22, 2013 at 12:17:41PM -0500, Bruce Momjian wrote:
>> > Good points.  I have modified the attached patch to do as you suggested.
>>
>> Also, I have read through the thread and summarized the positions of the
>> posters:
>>
>>                           9.3     WARNING                 ERROR
>>   SET                     none    Tom, DavidJ, AndresF    Robert, Kevin
>>   SAVEPOINT               error                           Tom, DavidJ, Robert, AndresF, Kevin
>>   LOCK, DECLARE           error                           Tom, DavidJ, Robert, AndresF, Kevin
>>
>> Everyone seems to agree that SAVEPOINT, LOCK, and DECLARE should remain
>> as errors.  Everyone also seems to agree that BEGIN and COMMIT should
>> remain warnings, and ABORT should be changed from notice to warning.
>>
>> Our only disagreement seems to be how to handle the SET commands, which
>> used to report nothing.  Would anyone else like to correct or express an
>> opinion?  Given the current vote count and backward-compatibility,
>> warning seems to be the direction we are heading.
>
> Patch applied.

I must be missing something.  The commit message for this patch says:

Also change ABORT outside of a transaction block from notice to
warning.

But the documentation says:

-   Issuing <command>ABORT</> when not inside a transaction does
-   no harm, but it will provoke a warning message.
+   Issuing <command>ABORT</> outside of a transaction block has no effect.

Those things are not the same.

-- 
Robert Haas
EnterpriseDB: http://www.enterprisedb.com
The Enterprise PostgreSQL Company



pgsql-hackers by date:

Previous
From: Robert Haas
Date:
Subject: Re: Performance Improvement by reducing WAL for Update Operation
Next
From: Bruce Momjian
Date:
Subject: Re: Suggestion: Issue warning when calling SET TRANSACTION outside transaction block