diff --git a/doc/src/sgml/ref/cluster.sgml b/doc/src/sgml/ref/cluster.sgml
index f72c7ac00676102cd25a6c57eab8aec0d02343e6..17c185e076026ca879f52545da80992f2461feb6 100644
--- a/doc/src/sgml/ref/cluster.sgml
+++ b/doc/src/sgml/ref/cluster.sgml
@@ -1,5 +1,5 @@
 <!--
-$PostgreSQL: pgsql/doc/src/sgml/ref/cluster.sgml,v 1.36 2006/09/16 00:30:17 momjian Exp $
+$PostgreSQL: pgsql/doc/src/sgml/ref/cluster.sgml,v 1.37 2006/10/31 01:52:31 neilc Exp $
 PostgreSQL documentation
 -->
 
@@ -60,8 +60,8 @@ CLUSTER
    in the
    current database that the calling user owns, or all tables if called
    by a superuser.  (Never-clustered tables are not included.)  This
-   form of <command>CLUSTER</command> cannot be called from inside a
-   transaction or function.
+   form of <command>CLUSTER</command> cannot be executed inside a transaction
+   block.
   </para>
 
   <para>
diff --git a/doc/src/sgml/ref/create_tablespace.sgml b/doc/src/sgml/ref/create_tablespace.sgml
index 8f64dbe2c8e9799f2d8e55ed89f9d7a8864a8c01..797591d613a8b8920f018aa3aa844311a9452ef8 100644
--- a/doc/src/sgml/ref/create_tablespace.sgml
+++ b/doc/src/sgml/ref/create_tablespace.sgml
@@ -1,5 +1,5 @@
 <!--
-$PostgreSQL: pgsql/doc/src/sgml/ref/create_tablespace.sgml,v 1.6 2006/09/16 00:30:17 momjian Exp $
+$PostgreSQL: pgsql/doc/src/sgml/ref/create_tablespace.sgml,v 1.7 2006/10/31 01:52:31 neilc Exp $
 PostgreSQL documentation
 -->
 
@@ -95,6 +95,11 @@ CREATE TABLESPACE <replaceable class="parameter">tablespacename</replaceable> [
   <para>
    Tablespaces are only supported on systems that support symbolic links.
   </para>
+
+   <para>
+    <command>CREATE TABLESPACE</> cannot be executed inside a transaction
+    block.
+   </para>
  </refsect1>
 
  <refsect1>
diff --git a/doc/src/sgml/ref/drop_tablespace.sgml b/doc/src/sgml/ref/drop_tablespace.sgml
index 080aa478eba92b03119c1303a53fe7dcae7b4748..25772eadd3139abb1489008994a04e8ddc1f78e4 100644
--- a/doc/src/sgml/ref/drop_tablespace.sgml
+++ b/doc/src/sgml/ref/drop_tablespace.sgml
@@ -1,5 +1,5 @@
 <!--
-$PostgreSQL: pgsql/doc/src/sgml/ref/drop_tablespace.sgml,v 1.4 2006/09/16 00:30:18 momjian Exp $
+$PostgreSQL: pgsql/doc/src/sgml/ref/drop_tablespace.sgml,v 1.5 2006/10/31 01:52:31 neilc Exp $
 PostgreSQL documentation
 -->
 
@@ -66,6 +66,15 @@ DROP TABLESPACE [ IF EXISTS ] <replaceable class="PARAMETER">tablespacename</rep
   </variablelist>
  </refsect1>
 
+ <refsect1>
+  <title>Notes</title>
+
+   <para>
+    <command>DROP TABLESPACE</> cannot be executed inside a transaction block.
+   </para>
+ </refsect1>
+
+
  <refsect1>
   <title>Examples</title>
 
diff --git a/doc/src/sgml/ref/psql-ref.sgml b/doc/src/sgml/ref/psql-ref.sgml
index d80249c7daefe250815c561e5a5e811c9a2f361e..be04f63284b540ff8f17cc03371efa7a0ed1c99e 100644
--- a/doc/src/sgml/ref/psql-ref.sgml
+++ b/doc/src/sgml/ref/psql-ref.sgml
@@ -1,5 +1,5 @@
 <!--
-$PostgreSQL: pgsql/doc/src/sgml/ref/psql-ref.sgml,v 1.172 2006/10/23 18:10:32 petere Exp $
+$PostgreSQL: pgsql/doc/src/sgml/ref/psql-ref.sgml,v 1.173 2006/10/31 01:52:31 neilc Exp $
 PostgreSQL documentation
 -->
 
@@ -94,9 +94,10 @@ PostgreSQL documentation
       <para>
        If the command string contains multiple SQL commands, they are
        processed in a single transaction, unless there are explicit
-       BEGIN/COMMIT commands included in the string to divide it into
-       multiple transactions.  This is different from the behavior when
-       the same string is fed to <application>psql</application>'s standard input.
+       <command>BEGIN</>/<command>COMMIT</> commands included in the
+       string to divide it into multiple transactions.  This is
+       different from the behavior when the same string is fed to
+       <application>psql</application>'s standard input.
       </para>
       </listitem>
     </varlistentry>
@@ -472,9 +473,14 @@ PostgreSQL documentation
         <option>-f</> option, adding this option wraps
         <command>BEGIN</>/<command>COMMIT</> around the script to execute it
         as a single transaction.  This ensures that either all the commands
-        complete successfully, or no changes are applied.  (However, if the
-        script itself uses <command>BEGIN</> or <command>COMMIT</>, this
-        option will not have the desired effect!)
+        complete successfully, or no changes are applied.  
+       </para>
+
+       <para>
+        If the script itself uses <command>BEGIN</>, <command>COMMIT</>
+        or any command that cannot be executed inside a transaction
+        block, specifying this option will cause the transaction to be
+        aborted.
        </para>
       </listitem>
      </varlistentry>
diff --git a/doc/src/sgml/ref/reindex.sgml b/doc/src/sgml/ref/reindex.sgml
index 574b8effd1c68933e7d8cbc280ecf2208300846d..661a219adc2a08655b5dde46333e5fb1087a275f 100644
--- a/doc/src/sgml/ref/reindex.sgml
+++ b/doc/src/sgml/ref/reindex.sgml
@@ -1,5 +1,5 @@
 <!--
-$PostgreSQL: pgsql/doc/src/sgml/ref/reindex.sgml,v 1.33 2006/09/16 00:30:19 momjian Exp $
+$PostgreSQL: pgsql/doc/src/sgml/ref/reindex.sgml,v 1.34 2006/10/31 01:52:31 neilc Exp $
 PostgreSQL documentation
 -->
 
@@ -106,7 +106,8 @@ REINDEX { INDEX | TABLE | DATABASE | SYSTEM } <replaceable class="PARAMETER">nam
      <para>
       Recreate all indexes within the current database.
       Indexes on shared system catalogs are skipped except in stand-alone mode
-      (see below).
+      (see below). This form of <command>REINDEX</command> cannot be executed 
+      inside a transaction block.
      </para>
     </listitem>
    </varlistentry>
@@ -118,6 +119,8 @@ REINDEX { INDEX | TABLE | DATABASE | SYSTEM } <replaceable class="PARAMETER">nam
       Recreate all indexes on system catalogs within the current database.
       Indexes on user tables are not processed.  Also, indexes on shared
       system catalogs are skipped except in stand-alone mode (see below).
+      This form of <command>REINDEX</command> cannot be executed inside a
+      transaction block.
      </para>
     </listitem>
    </varlistentry>
diff --git a/doc/src/sgml/ref/vacuum.sgml b/doc/src/sgml/ref/vacuum.sgml
index 225590a5cd26262c733d14fa46a7e2a17451d025..0764aa6807972d12aba1d8cdc1c6ecd57fd6c2f2 100644
--- a/doc/src/sgml/ref/vacuum.sgml
+++ b/doc/src/sgml/ref/vacuum.sgml
@@ -1,5 +1,5 @@
 <!--
-$PostgreSQL: pgsql/doc/src/sgml/ref/vacuum.sgml,v 1.41 2006/09/16 00:30:20 momjian Exp $
+$PostgreSQL: pgsql/doc/src/sgml/ref/vacuum.sgml,v 1.42 2006/10/31 01:52:31 neilc Exp $
 PostgreSQL documentation
 -->
 
@@ -155,6 +155,10 @@ VACUUM [ FULL | FREEZE ] [ VERBOSE ] ANALYZE [ <replaceable class="PARAMETER">ta
  <refsect1>
   <title>Notes</title>
 
+   <para>
+    <command>VACUUM</> cannot be executed inside a transaction block.
+   </para>
+
    <para>
     We recommend that active production databases be
     vacuumed frequently (at least nightly), in order to