On Fri, Nov 29, 2013 at 01:05:20PM -0500, Bruce Momjian wrote:
> On Fri, Nov 29, 2013 at 12:27:49AM -0500, Robert Haas wrote:
> > On Thu, Nov 28, 2013 at 11:04 PM, Alvaro Herrera
> > <alvhe...@2ndquadrant.com> wrote:
> > > David Johnston wrote:
> > >
> > >> In all of these cases we are assuming that the user understands that
> > >> emitting a warning means that something is being logged to disk and thus 
> > >> is
> > >> causing a resource drain.
> > >>
> > >> I like explicitly saying that issuing these commands is pointless/"has no
> > >> effect"; being indirect and saying that the only thing they do is emit a
> > >> warning omits any explicit explicit explanation of why.  And while I 
> > >> agree
> > >> that logging the warning is an effect; but it is not the primary/direct
> > >> effect that the user cares about.
> > >
> > > Honestly I still prefer what I proposed initially, which AFAICS has all
> > > the properties you deem desirable in the wording:
> > >
> > > "issuing ROLLBACK outside a transaction emits a warning and otherwise has 
> > > no effect".
> > 
> > Yeah, I still like "otherwise has no effect" or "has no other effect"
> > best.  But I can live with Bruce's latest proposal, too.
> 
> OK, great, I have gone with Alvaro's wording;  patch attached.

Duh, missing patch.  Attached now.

-- 
  Bruce Momjian  <br...@momjian.us>        http://momjian.us
  EnterpriseDB                             http://enterprisedb.com

  + Everyone has their own god. +
diff --git a/doc/src/sgml/ref/abort.sgml b/doc/src/sgml/ref/abort.sgml
new file mode 100644
index f3a2fa8..e9138d5
*** a/doc/src/sgml/ref/abort.sgml
--- b/doc/src/sgml/ref/abort.sgml
*************** ABORT [ WORK | TRANSACTION ]
*** 63,69 ****
    </para>
  
    <para>
!    Issuing <command>ABORT</> outside of a transaction block has no effect.
    </para>
   </refsect1>
  
--- 63,70 ----
    </para>
  
    <para>
!    Issuing <command>ABORT</> outside of a transaction block
!    emits a warning and otherwise has no effect.
    </para>
   </refsect1>
  
diff --git a/doc/src/sgml/ref/rollback.sgml b/doc/src/sgml/ref/rollback.sgml
new file mode 100644
index 4f79621..9a1529f
*** a/doc/src/sgml/ref/rollback.sgml
--- b/doc/src/sgml/ref/rollback.sgml
*************** ROLLBACK [ WORK | TRANSACTION ]
*** 60,66 ****
  
    <para>
     Issuing <command>ROLLBACK</> outside of a transaction
!    block has no effect.
    </para>
   </refsect1>
  
--- 60,66 ----
  
    <para>
     Issuing <command>ROLLBACK</> outside of a transaction
!    block emits a warning and otherwise has no effect.
    </para>
   </refsect1>
  
diff --git a/doc/src/sgml/ref/set.sgml b/doc/src/sgml/ref/set.sgml
new file mode 100644
index 5a84f69..aaad61e
*** a/doc/src/sgml/ref/set.sgml
--- b/doc/src/sgml/ref/set.sgml
*************** SET [ SESSION | LOCAL ] TIME ZONE { <rep
*** 110,117 ****
       <para>
        Specifies that the command takes effect for only the current
        transaction.  After <command>COMMIT</> or <command>ROLLBACK</>,
!       the session-level setting takes effect again.  This has no effect
!       outside of a transaction block.
       </para>
      </listitem>
     </varlistentry>
--- 110,118 ----
       <para>
        Specifies that the command takes effect for only the current
        transaction.  After <command>COMMIT</> or <command>ROLLBACK</>,
!       the session-level setting takes effect again.  Issuing this
!       outside of a transaction block emits a warning and otherwise has
!       no effect.
       </para>
      </listitem>
     </varlistentry>
diff --git a/doc/src/sgml/ref/set_constraints.sgml b/doc/src/sgml/ref/set_constraints.sgml
new file mode 100644
index a33190c..60cabed
*** a/doc/src/sgml/ref/set_constraints.sgml
--- b/doc/src/sgml/ref/set_constraints.sgml
*************** SET CONSTRAINTS { ALL | <replaceable cla
*** 99,105 ****
  
    <para>
     This command only alters the behavior of constraints within the
!    current transaction.  This has no effect outside of a transaction block.
    </para>
   </refsect1>
  
--- 99,106 ----
  
    <para>
     This command only alters the behavior of constraints within the
!    current transaction.  Issuing this outside of a transaction block
!    emits a warning and otherwise has no effect.
    </para>
   </refsect1>
  
diff --git a/doc/src/sgml/ref/set_transaction.sgml b/doc/src/sgml/ref/set_transaction.sgml
new file mode 100644
index e90ff4a..029b75a
*** a/doc/src/sgml/ref/set_transaction.sgml
--- b/doc/src/sgml/ref/set_transaction.sgml
*************** SET SESSION CHARACTERISTICS AS TRANSACTI
*** 185,191 ****
    <para>
     If <command>SET TRANSACTION</command> is executed without a prior
     <command>START TRANSACTION</command> or <command>BEGIN</command>,
!    it will have no effect.
    </para>
  
    <para>
--- 185,191 ----
    <para>
     If <command>SET TRANSACTION</command> is executed without a prior
     <command>START TRANSACTION</command> or <command>BEGIN</command>,
!    it emits a warning and otherwise has no effect.
    </para>
  
    <para>
-- 
Sent via pgsql-hackers mailing list (pgsql-hackers@postgresql.org)
To make changes to your subscription:
http://www.postgresql.org/mailpref/pgsql-hackers

Reply via email to