On Mon, Nov 11, 2013 at 09:27:15PM -0500, Tom Lane wrote:
> Bruce Momjian <br...@momjian.us> writes:
> > On Mon, Nov 11, 2013 at 08:59:35PM -0500, Tom Lane wrote:
> >> 'Statement' might work.
> 
> > OK, updated patch attached.  Is "statement" too vague here?  SQL
> > statement?  query?
> 
> "SQL statement" might be a good idea in the first sentence, but
> I don't think you need to repeat it in the second.
> 
> What's bothering me about this wording is that you're talking about
> statements and then suddenly reference transactions (as being "those
> other things messing with your data").  This seems weirdly asymmetric,
> since after all you could equally well be the one messing with their
> data.

Yes, that bugged me too, but then I realized that you only see the
changes from a transaction when it completes, not from each statement,
e.g. you can never see changes between statements of a multi-statement
transaction.

I used "SQL statement" in the updated, attached patch.

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

  + Everyone has their own god. +
diff --git a/doc/src/sgml/mvcc.sgml b/doc/src/sgml/mvcc.sgml
new file mode 100644
index cefd323..f56eb55
*** a/doc/src/sgml/mvcc.sgml
--- b/doc/src/sgml/mvcc.sgml
***************
*** 41,52 ****
      for developers to manage concurrent access to data.  Internally,
      data consistency is maintained by using a multiversion
      model (Multiversion Concurrency Control, <acronym>MVCC</acronym>).
!     This means that while querying a database each transaction sees
      a snapshot of data (a <firstterm>database version</firstterm>)
      as it was some
      time ago, regardless of the current state of the underlying data.
!     This protects the transaction from viewing inconsistent data that
!     could be caused by (other) concurrent transaction updates on the same
      data rows, providing <firstterm>transaction isolation</firstterm>
      for each database session.  <acronym>MVCC</acronym>, by eschewing
      the locking methodologies of traditional database systems,
--- 41,52 ----
      for developers to manage concurrent access to data.  Internally,
      data consistency is maintained by using a multiversion
      model (Multiversion Concurrency Control, <acronym>MVCC</acronym>).
!     This means that each SQL statement sees
      a snapshot of data (a <firstterm>database version</firstterm>)
      as it was some
      time ago, regardless of the current state of the underlying data.
!     This prevents statements from viewing inconsistent data produced
!     by concurrent transactions performing updates on the same
      data rows, providing <firstterm>transaction isolation</firstterm>
      for each database session.  <acronym>MVCC</acronym>, by eschewing
      the locking methodologies of traditional database systems,
-- 
Sent via pgsql-docs mailing list (pgsql-docs@postgresql.org)
To make changes to your subscription:
http://www.postgresql.org/mailpref/pgsql-docs

Reply via email to