diff --git a/doc/src/sgml/biblio.sgml b/doc/src/sgml/biblio.sgml
index 0da3a83faec..7cac1d22771 100644
--- a/doc/src/sgml/biblio.sgml
+++ b/doc/src/sgml/biblio.sgml
@@ -258,6 +258,64 @@ ssimkovi@ag.or.at
Proceedings and Articles
This section is for articles and newsletters.
+
+
+ Serializable Snapshot Isolation in PostgreSQL
+
+
+ D.
+ Ports
+
+
+ K.
+ Grittner
+
+
+
+
+ VLDB Conference
+ August 2012
+ Istanbul, Turkey
+
+
+
+
+
+ A Critique of ANSI SQL Isolation Levels
+
+
+ H.
+ Berenson
+
+
+ P.
+ Bernstein
+
+
+ J.
+ Gray
+
+
+ J.
+ Melton
+
+
+ E.
+ O'Neil
+
+
+ P.
+ O'Neil
+
+
+
+
+ ACM-SIGMOD Conference on Management of Data
+ June 1995
+ San Jose, California
+
+
+
Partial indexing in POSTGRES: research project
Olson, 1993
diff --git a/doc/src/sgml/mvcc.sgml b/doc/src/sgml/mvcc.sgml
index ea9d8fc143f..56ae543e577 100644
--- a/doc/src/sgml/mvcc.sgml
+++ b/doc/src/sgml/mvcc.sgml
@@ -535,6 +535,20 @@ ERROR: could not serialize access due to concurrent update
of explicit locks to block conflicting transactions.
+
+ The Repeatable Read isolation level is implemented using a technique
+ known in academic database literature and in some other database products
+ as Snapshot Isolation. Differences in behavior
+ and performance may be observed when compared with systems that use a
+ traditional locking technique that reduces concurrency. Some other
+ systems may even offer Repeatable Read and Snapshot Isolation as distinct
+ isolation levels with different behavior. The permitted phenomena that
+ distinguish the two techniques were not formalized by database researchers
+ until after the SQL standard was developed, and are outside the scope of
+ this manual. For a full treatment, please see
+ .
+
+
Prior to PostgreSQL version 9.1, a request
@@ -781,6 +795,15 @@ ERROR: could not serialize access due to read/write dependencies among transact
+
+
+ The Serializable isolation level is implemented using a technique known
+ in academic database literature as Serializable Snapshot Isolation, which
+ builds on Snapshot Isolation by adding checks for serialization anomalies.
+ Some differences in behavior and performance may be observed when compared
+ with other systems that use a traditional locking technique. Please see
+ for detailed information.
+
@@ -1712,6 +1735,16 @@ SELECT pg_advisory_lock(q.id) FROM
see a transient state that is inconsistent with any serial execution
of the transactions on the master.
+
+
+ Internal access to the system catalogs is not done using the isolation
+ level of the current transaction. This means that newly created database
+ objects such as tables are visible to concurrent Repeatable Read and
+ Serializable transactions, even though the rows they contain are not. In
+ contrast, queries that explicitly examine the system catalogs don't see
+ rows representing concurrently created database objects, in the higher
+ isolation levels.
+