如果并发 REINDEX 因表包含无效数据而失败,您需要执行以下操作:
-
修复无效数据,方法可参考 此处。
-
使用以下语句列出无效索引:
SELECT pg_class.relname FROM pg_class, pg_index WHERE pg_index.indisvalid = false AND pg_index.indexrelid = pg_class.oid; -
使用
DROP INDEX <indexname>;删除上述列出的每个无效索引。 -
再次尝试执行
REINDEX。