From 16ea51a263bfbb009ba73f36494f49246933e93c Mon Sep 17 00:00:00 2001 From: Tom Lane Date: Thu, 19 May 2016 14:40:02 -0400 Subject: [PATCH] Pin the built-in index access methods. This was overlooked in commit 473b93287, which introduced DROP ACCESS METHOD. Although that command is restricted to superusers, we don't want even superusers dropping the built-in methods; "DROP ACCESS METHOD btree" in particular is unrecoverable from. Pin these objects in the same way that other initdb-created objects are pinned. I chose to bump catversion for this fix. That's not absolutely necessary perhaps, but it will ensure that no 9.6 production systems are missing the pin entries. --- src/bin/initdb/initdb.c | 2 ++ src/include/catalog/catversion.h | 2 +- 2 files changed, 3 insertions(+), 1 deletion(-) diff --git a/src/bin/initdb/initdb.c b/src/bin/initdb/initdb.c index ec8c38ed5a..d4a5e7c5ee 100644 --- a/src/bin/initdb/initdb.c +++ b/src/bin/initdb/initdb.c @@ -1664,6 +1664,8 @@ setup_depend(FILE *cmdfd) "INSERT INTO pg_depend SELECT 0,0,0, tableoid,oid,0, 'p' " " FROM pg_opfamily;\n\n", "INSERT INTO pg_depend SELECT 0,0,0, tableoid,oid,0, 'p' " + " FROM pg_am;\n\n", + "INSERT INTO pg_depend SELECT 0,0,0, tableoid,oid,0, 'p' " " FROM pg_amop;\n\n", "INSERT INTO pg_depend SELECT 0,0,0, tableoid,oid,0, 'p' " " FROM pg_amproc;\n\n", diff --git a/src/include/catalog/catversion.h b/src/include/catalog/catversion.h index 08867fb06a..743e9a6e55 100644 --- a/src/include/catalog/catversion.h +++ b/src/include/catalog/catversion.h @@ -53,6 +53,6 @@ */ /* yyyymmddN */ -#define CATALOG_VERSION_NO 201605051 +#define CATALOG_VERSION_NO 201605191 #endif