PostgreSQL 9.2.2、9.1.7、9.0.11 和 8.4.15 版本已發布

張貼於 2012-12-06,由 PostgreSQL 全球開發小組

PostgreSQL 全球開發小組已經發布了所有當前 PostgreSQL 數據庫系統版本的更新,包括 9.2.2、9.1.7、9.0.11、8.4.15 和 8.3.22 版本。 PostgreSQL Hot Standby 複製的用戶應在下一個可能的機會更新。其他用戶應在其下一個維護窗口更新。

此版本修復了 Hot Standby 的一個重要的頁面排序問題,在某些情況下可能導致備用機上的索引損壞。此外,此更新修補了檢查點和事務 ID 迴繞的時序問題,在某些情況下可能導致數據損壞。今天的更新還修復了 CREATE INDEX CONCURRENTLY 和 DROP INDEX CONCURRENTLY 的多個問題,這些問題可能導致這些命令失敗或產生損壞的索引。使用此功能的用戶可能需要 REINDEX 或重新建立受影響的索引(見下文)。

此更新版本還包含 PostgreSQL 社群在過去一個月內發現和修補的許多小問題的修復,包括幾個特定於 9.2 版本的修復。 這些包括:

  • 防止 psql 因編碼不正確的輸入數據而崩潰
  • 修復 pg_regress gmake 建置問題
  • 確保為擴展建立正確的目錄
  • 修復一些關於緩衝區鎖定和 VACUUM 的問題
  • pg_upgrade 的多個修復和改進
  • 修復故障轉移到備用機時恢復結束的錯誤
  • 避免在備用模式下出現虛假的「out-of-sequence timeline ID」錯誤
  • 不要在關閉期間啟動新的子進程
  • 提高 JOIN 使用部分索引的能力
  • 修復各種整數溢出錯誤
  • 消除 record_out() 和 record_send() 中的內存洩漏
  • 跳過在 COMMIT 時搜索子事務日誌
  • 修復 WaitLatch() 時序問題
  • 修復 ALTER COLUMN TYPE 中繼承檢查約束的處理
  • 使 ALTER EXTENSION SET SCHEMA 的行為與文檔一致
  • 在 sectional dumps 的「data」部分中包含 SEQUENCE SET 語句
  • 防止解析器認為 VIEW 具有系統列
  • 修復 pg_dump 的 --clean 模式
  • 防止內存不足時出現哈希表損壞
  • 各種查詢計劃器和執行器修復和改進
  • 多個文檔更新
  • 七個時區的 DST 更新

PostgreSQL 8.3 將於 2013 年 2 月達到生命週期結束 (EOL)。因此,此更新可能是該版本的倒數第二個更新。 我們敦促 8.3 版的用戶現在開始規劃完全升級到更新版本的 PostgreSQL。 更多信息,請參閱我們的 版本政策

與其他次要版本一樣,用戶無需轉儲和重新載入其數據庫或使用 pg_upgrade 即可應用此更新版本; 您只需關閉 PostgreSQL 並更新其二進制文件。 跳過了多個更新版本的用戶可能需要執行其他更新後步驟; 請參閱 發布說明 了解詳細資訊。

大量使用 CREATE INDEX CONCURRENTLY 的用戶可能希望在應用更新後 REINDEX,或刪除並重新建立使用 CREATE INDEX CONCURRENTLY 建立的索引,以確保其完整性。 不幸的是,並發建立的索引與非並發建立的索引無法區分,因此用戶需要依靠 DBA 的知識。 應用更新後,用戶可以並發建立新索引,然後並發刪除舊索引以避免停機。

連結