Re: New docs chapter on Transaction Management and related changes - Mailing list pgsql-hackers

From Bruce Momjian
Subject Re: New docs chapter on Transaction Management and related changes
Date
Msg-id Y30PhK8aiSPqyAQL@momjian.us
Whole thread Raw
In response to Re: New docs chapter on Transaction Management and related changes  (Alvaro Herrera <alvherre@alvh.no-ip.org>)
List pgsql-hackers
On Mon, Nov 21, 2022 at 11:35:09AM +0100, Álvaro Herrera wrote:
> Agreed on not using "unaborted", per previous discussion.
> 
> On 2022-Nov-21, Laurenz Albe wrote:
> 
> > Perhaps we should also avoid the term "transaction block".  Even without speaking
> > of a "block", way too many people confuse PL/pgSQL's BEGIN ... END blocks
> > with transactions.  On the other hand, we use "transaction block" everywhere
> > else in the documentation...
> 
> Yeah, I don't understand why we need this "transaction block" term at
> all.  It adds nothing.  We could just use the term "transaction", and
> little meaning would be lost.  When necessary, we could just say
> "explicit transaction" or something to that effect.  In this particular
> case, we could modify your proposed wording,

Yes, I just posted that same thing:

    Transactions can be created explicitly using

> >   <para>
> >    Multi-statement transactions can be created explicitly using
> >    <command>BEGIN</command> or <command>START TRANSACTION</command> and
> >    are ended using <command>COMMIT</command> or <command>ROLLBACK</command>.
> >    An SQL statement outside of a transaction block automatically uses
> >    a single-statement transaction.
> >   </para>
> 
> by removing the word "block":
> 
> >    Any SQL statement outside of an transaction automatically uses
> >    a single-statement transaction.
> 
> and perhaps add "explicit", but I don't think it's necessary:
> 
> >    Any SQL statement outside of an explicit transaction automatically
> >    uses a single-statement transaction.

Full paragraph is now:

   Transactions can be created explicitly using <command>BEGIN</command>
   or <command>START TRANSACTION</command> and ended using
   <command>COMMIT</command> or <command>ROLLBACK</command>.  An SQL
   statement outside of an explicit transaction automatically uses a
   single-statement transaction.

> (I also changed "An" to "Any" because it seems more natural, but I
> suppose it's a stylistic choice.)

I think we have a plurality mismatch so I went with "SQL statements" and
didn't need "an" or "any" (even newer paragraph version):

   Transactions can be created explicitly using <command>BEGIN</command>
   or <command>START TRANSACTION</command> and ended using
   <command>COMMIT</command> or <command>ROLLBACK</command>.  SQL
   statements outside of explicit transactions automatically use
   single-statement transactions.

Updated patch attached.

-- 
  Bruce Momjian  <bruce@momjian.us>        https://momjian.us
  EDB                                      https://enterprisedb.com

  Indecision is a decision.  Inaction is an action.  Mark Batterson


Attachment

pgsql-hackers by date:

Previous
From: Magnus Hagander
Date:
Subject: Re: More efficient build farm animal wakeup?
Next
From: Robert Haas
Date:
Subject: Re: Damage control for planner's get_actual_variable_endpoint() runaway