From 679f2ca25b34df013b57eb8aa8b32d6c3f56721a Mon Sep 17 00:00:00 2001
From: Simon Riggs <simon@2ndQuadrant.com>
Date: Wed, 17 Oct 2012 08:23:05 +0100
Subject: [PATCH] Clarify hash index caution and copy to CREATE INDEX docs

---
 doc/src/sgml/indices.sgml          |  6 ++++--
 doc/src/sgml/ref/create_index.sgml | 12 ++++++++++++
 2 files changed, 16 insertions(+), 2 deletions(-)

diff --git a/doc/src/sgml/indices.sgml b/doc/src/sgml/indices.sgml
index 3a46b96a9d2..9eb948d6bcc 100644
--- a/doc/src/sgml/indices.sgml
+++ b/doc/src/sgml/indices.sgml
@@ -196,8 +196,10 @@ CREATE INDEX <replaceable>name</replaceable> ON <replaceable>table</replaceable>
    <para>
     Hash index operations are not presently WAL-logged,
     so hash indexes might need to be rebuilt with <command>REINDEX</>
-    after a database crash. They are also not replicated over streaming or
-    file-based replication.
+    after a database crash if there were unwritten changes.
+    Also, changes to hash indexes are not replicated over streaming or
+    file-based replication after the initial base backup, so they
+    give wrong anwers to queries that subsequently use them.
     For these reasons, hash index use is presently discouraged.
    </para>
   </caution>
diff --git a/doc/src/sgml/ref/create_index.sgml b/doc/src/sgml/ref/create_index.sgml
index 17b433a47e4..2403b7642a1 100644
--- a/doc/src/sgml/ref/create_index.sgml
+++ b/doc/src/sgml/ref/create_index.sgml
@@ -466,6 +466,18 @@ Indexes:
    they can be useful.
   </para>
 
+  <caution>
+   <para>
+    Hash index operations are not presently WAL-logged,
+    so hash indexes might need to be rebuilt with <command>REINDEX</>
+    after a database crash if there were unwritten changes.
+    Also, changes to hash indexes are not replicated over streaming or
+    file-based replication after the initial base backup, so they
+    give wrong anwers to queries that subsequently use them.
+    For these reasons, hash index use is presently discouraged.
+   </para>
+  </caution>
+
   <para>
    Currently, only the B-tree, GiST and GIN index methods support
    multicolumn indexes. Up to 32 fields can be specified by default.
-- 
GitLab