aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorBruce Momjian <bruce@momjian.us>2014-10-18 10:36:09 -0400
committerBruce Momjian <bruce@momjian.us>2014-10-18 10:36:09 -0400
commitb87671f1b63a0c9cf264afc209e3acebdb52477f (patch)
treee7a2c7de96437c6bee58c20e0d4cdec01555661d
parent417f92484da8c9a124e7eece8dbfb71f688a0104 (diff)
downloadpostgresql-b87671f1b63a0c9cf264afc209e3acebdb52477f.tar.gz
postgresql-b87671f1b63a0c9cf264afc209e3acebdb52477f.zip
Shorten warning about hash creation
Also document that PITR is also affected.
-rw-r--r--doc/src/sgml/ref/create_index.sgml3
-rw-r--r--src/backend/commands/indexcmds.c2
-rw-r--r--src/test/regress/expected/create_index.out8
-rw-r--r--src/test/regress/expected/enum.out2
-rw-r--r--src/test/regress/expected/macaddr.out2
-rw-r--r--src/test/regress/expected/replica_identity.out2
-rw-r--r--src/test/regress/expected/uuid.out2
7 files changed, 11 insertions, 10 deletions
diff --git a/doc/src/sgml/ref/create_index.sgml b/doc/src/sgml/ref/create_index.sgml
index e469b17e168..43df32f977a 100644
--- a/doc/src/sgml/ref/create_index.sgml
+++ b/doc/src/sgml/ref/create_index.sgml
@@ -474,7 +474,8 @@ Indexes:
Also, changes to hash indexes are not replicated over streaming or
file-based replication after the initial base backup, so they
give wrong answers to queries that subsequently use them.
- For these reasons, hash index use is presently discouraged.
+ Hash indexes are also not properly restored during point-in-time
+ recovery. For these reasons, hash index use is presently discouraged.
</para>
</caution>
diff --git a/src/backend/commands/indexcmds.c b/src/backend/commands/indexcmds.c
index 8a1cb4b8182..3c1e90eb0e9 100644
--- a/src/backend/commands/indexcmds.c
+++ b/src/backend/commands/indexcmds.c
@@ -491,7 +491,7 @@ DefineIndex(Oid relationId,
if (strcmp(accessMethodName, "hash") == 0)
ereport(WARNING,
- (errmsg("hash indexes are not WAL-logged and thus are not crash-safe and cannot be used on standby servers")));
+ (errmsg("hash indexes are not WAL-logged and their use is discouraged")));
if (stmt->unique && !accessMethodForm->amcanunique)
ereport(ERROR,
diff --git a/src/test/regress/expected/create_index.out b/src/test/regress/expected/create_index.out
index a2bef7acb9a..8326e942500 100644
--- a/src/test/regress/expected/create_index.out
+++ b/src/test/regress/expected/create_index.out
@@ -2238,13 +2238,13 @@ DROP TABLE array_gin_test;
-- HASH
--
CREATE INDEX hash_i4_index ON hash_i4_heap USING hash (random int4_ops);
-WARNING: hash indexes are not WAL-logged and thus are not crash-safe and cannot be used on standby servers
+WARNING: hash indexes are not WAL-logged and their use is discouraged
CREATE INDEX hash_name_index ON hash_name_heap USING hash (random name_ops);
-WARNING: hash indexes are not WAL-logged and thus are not crash-safe and cannot be used on standby servers
+WARNING: hash indexes are not WAL-logged and their use is discouraged
CREATE INDEX hash_txt_index ON hash_txt_heap USING hash (random text_ops);
-WARNING: hash indexes are not WAL-logged and thus are not crash-safe and cannot be used on standby servers
+WARNING: hash indexes are not WAL-logged and their use is discouraged
CREATE INDEX hash_f8_index ON hash_f8_heap USING hash (random float8_ops);
-WARNING: hash indexes are not WAL-logged and thus are not crash-safe and cannot be used on standby servers
+WARNING: hash indexes are not WAL-logged and their use is discouraged
-- CREATE INDEX hash_ovfl_index ON hash_ovfl_heap USING hash (x int4_ops);
--
-- Test functional index
diff --git a/src/test/regress/expected/enum.out b/src/test/regress/expected/enum.out
index fa23b52e552..1a61a5b0df2 100644
--- a/src/test/regress/expected/enum.out
+++ b/src/test/regress/expected/enum.out
@@ -383,7 +383,7 @@ DROP INDEX enumtest_btree;
-- Hash index / opclass with the = operator
--
CREATE INDEX enumtest_hash ON enumtest USING hash (col);
-WARNING: hash indexes are not WAL-logged and thus are not crash-safe and cannot be used on standby servers
+WARNING: hash indexes are not WAL-logged and their use is discouraged
SELECT * FROM enumtest WHERE col = 'orange';
col
--------
diff --git a/src/test/regress/expected/macaddr.out b/src/test/regress/expected/macaddr.out
index 91edc5ab7ae..8e41a4bbf35 100644
--- a/src/test/regress/expected/macaddr.out
+++ b/src/test/regress/expected/macaddr.out
@@ -39,7 +39,7 @@ SELECT * FROM macaddr_data;
CREATE INDEX macaddr_data_btree ON macaddr_data USING btree (b);
CREATE INDEX macaddr_data_hash ON macaddr_data USING hash (b);
-WARNING: hash indexes are not WAL-logged and thus are not crash-safe and cannot be used on standby servers
+WARNING: hash indexes are not WAL-logged and their use is discouraged
SELECT a, b, trunc(b) FROM macaddr_data ORDER BY 2, 1;
a | b | trunc
----+-------------------+-------------------
diff --git a/src/test/regress/expected/replica_identity.out b/src/test/regress/expected/replica_identity.out
index 45df81ae485..e29e2fba674 100644
--- a/src/test/regress/expected/replica_identity.out
+++ b/src/test/regress/expected/replica_identity.out
@@ -11,7 +11,7 @@ CREATE INDEX test_replica_identity_keyab ON test_replica_identity (keya, keyb);
CREATE UNIQUE INDEX test_replica_identity_keyab_key ON test_replica_identity (keya, keyb);
CREATE UNIQUE INDEX test_replica_identity_nonkey ON test_replica_identity (keya, nonkey);
CREATE INDEX test_replica_identity_hash ON test_replica_identity USING hash (nonkey);
-WARNING: hash indexes are not WAL-logged and thus are not crash-safe and cannot be used on standby servers
+WARNING: hash indexes are not WAL-logged and their use is discouraged
CREATE UNIQUE INDEX test_replica_identity_expr ON test_replica_identity (keya, keyb, (3));
CREATE UNIQUE INDEX test_replica_identity_partial ON test_replica_identity (keya, keyb) WHERE keyb != '3';
-- default is 'd'/DEFAULT for user created tables
diff --git a/src/test/regress/expected/uuid.out b/src/test/regress/expected/uuid.out
index 97c0ce30de3..59cb1e0ba6f 100644
--- a/src/test/regress/expected/uuid.out
+++ b/src/test/regress/expected/uuid.out
@@ -114,7 +114,7 @@ SELECT COUNT(*) FROM guid1 WHERE guid_field >= '22222222-2222-2222-2222-22222222
-- btree and hash index creation test
CREATE INDEX guid1_btree ON guid1 USING BTREE (guid_field);
CREATE INDEX guid1_hash ON guid1 USING HASH (guid_field);
-WARNING: hash indexes are not WAL-logged and thus are not crash-safe and cannot be used on standby servers
+WARNING: hash indexes are not WAL-logged and their use is discouraged
-- unique index test
CREATE UNIQUE INDEX guid1_unique_BTREE ON guid1 USING BTREE (guid_field);
-- should fail