aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--src/backend/catalog/index.c8
1 files changed, 8 insertions, 0 deletions
diff --git a/src/backend/catalog/index.c b/src/backend/catalog/index.c
index 0a49d5ad59a..e4fd1fd10b9 100644
--- a/src/backend/catalog/index.c
+++ b/src/backend/catalog/index.c
@@ -3945,6 +3945,14 @@ reindex_relation(Oid relid, int flags, ReindexParams *params)
errmsg("cannot reindex invalid index \"%s.%s\" on TOAST table, skipping",
get_namespace_name(indexNamespaceId),
get_rel_name(indexOid))));
+
+ /*
+ * Remove this invalid toast index from the reindex pending list,
+ * as it is skipped here due to the hard failure that would happen
+ * in reindex_index(), should we try to process it.
+ */
+ if (flags & REINDEX_REL_SUPPRESS_INDEX_USE)
+ RemoveReindexPending(indexOid);
continue;
}