From e33f205a945e7497b9aecffffb7e3b0a199f8a29 Mon Sep 17 00:00:00 2001 From: Tom Lane Date: Mon, 29 Sep 2003 23:40:26 +0000 Subject: Adjust btree index build procedure so that the btree metapage looks invalid (has the wrong magic number) until the build is entirely complete. This turns out to cost no additional writes in the normal case, since we were rewriting the metapage at the end of the process anyway. In normal scenarios there's no real gain in security, because a failed index build would roll back the transaction leaving an unused index file, but for rebuilding shared system indexes this seems to add some useful protection. --- doc/src/sgml/ref/reindex.sgml | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) (limited to 'doc/src') diff --git a/doc/src/sgml/ref/reindex.sgml b/doc/src/sgml/ref/reindex.sgml index d945112de79..43f0368d64a 100644 --- a/doc/src/sgml/ref/reindex.sgml +++ b/doc/src/sgml/ref/reindex.sgml @@ -1,5 +1,5 @@ @@ -180,9 +180,10 @@ REINDEX { DATABASE | TABLE | INDEX } nameREINDEX is not crash-safe for shared indexes, which is why this case is disallowed during normal operation. If a failure occurs while reindexing one - of these catalogs in standalone mode, it is important that the failure - be rectified and the REINDEX operation redone - before attempting to restart the regular server. + of these catalogs in standalone mode, it will not be possible to + restart the regular server until the problem is rectified. (The + typical symptom of a partially rebuilt shared index is index is not + a btree errors.) -- cgit v1.2.3