PostgreSQL Global Development Group 將於 2022 年 6 月 16 日發布 PostgreSQL 14 的更新。此版本修復了 PostgreSQL 14 所有版本中的一個問題,該問題可能導致索引的靜默損毀。
自 PostgreSQL 14.0 發布以來,CREATE INDEX CONCURRENTLY
和 REINDEX CONCURRENTLY
存在一個問題,可能導致索引中發生靜默資料損毀。此問題已在即將發布的 PostgreSQL 14.4 版本中修復。
如果您在 14.4 之前的任何 PostgreSQL 14 版本上執行了這些命令中的任何一個,您可能已經遇到靜默資料損毀。您可以使用 pg_amcheck
命令,並使用 --heapallindexed
標誌來檢測 B-tree 索引的此問題。
如果您需要在 PostgreSQL 14.4 發布之前立即解決此問題,您可以 不使用 CONCURRENTLY
執行 CREATE INDEX
或 REINDEX
。您也可以執行 reindexdb
命令,並使用 --jobs
標誌來增加並行性,但不要使用 --concurrently
標誌。
PostgreSQL 14.4 發布後,您可以安全地使用 CREATE INDEX CONCURRENTLY
和 REINDEX CONCURRENTLY
來管理您的索引,以及 reindexdb
上的 --concurrently
標誌。
如果您有其他問題,您可以透過 支援 管道之一與 PostgreSQL 社群的成員交談。