From a666d28543f81cc0a5f4b8a4b378957432610111 Mon Sep 17 00:00:00 2001
From: Peter Eisentraut <peter_e@gmx.net>
Date: Thu, 18 Dec 2008 10:45:00 +0000
Subject: [PATCH] Add note that TRUNCATE uses an access exclusive lock.  This
 apparently surprised/confused some users.

---
 doc/src/sgml/ref/truncate.sgml | 9 ++++++++-
 1 file changed, 8 insertions(+), 1 deletion(-)

diff --git a/doc/src/sgml/ref/truncate.sgml b/doc/src/sgml/ref/truncate.sgml
index 03a66859082..d765c1bd8c7 100644
--- a/doc/src/sgml/ref/truncate.sgml
+++ b/doc/src/sgml/ref/truncate.sgml
@@ -1,5 +1,5 @@
 <!--
-$PostgreSQL: pgsql/doc/src/sgml/ref/truncate.sgml,v 1.30 2008/11/14 10:22:47 petere Exp $
+$PostgreSQL: pgsql/doc/src/sgml/ref/truncate.sgml,v 1.31 2008/12/18 10:45:00 petere Exp $
 PostgreSQL documentation
 -->
 
@@ -102,6 +102,13 @@ TRUNCATE [ TABLE ] <replaceable class="PARAMETER">name</replaceable> [, ... ]
    to truncate it.
   </para>
 
+  <para>
+   <command>TRUNCATE</> acquires an access exclusive lock on the
+   tables in operates on, which blocks all other concurrent operations
+   on the table.  If concurrent access to a table is required, then
+   the <command>DELETE</> command should be used instead.
+  </para>
+
   <para>
    <command>TRUNCATE</> cannot be used on a table that has foreign-key
    references from other tables, unless all such tables are also truncated
-- 
GitLab