Fsyncgate:fsync() 錯誤不可恢復
Fsyncgate: errors on fsync are unrecovarable
重點導讀
PostgreSQL 在 XFS 檔系統上因 fsync() 回傳 EIO 後被忽略,導致資料被覆寫失效。
- 問題來源:Linux kernel 4.10 之前的 fsync() 會在失敗後清除錯誤旗標,隱藏寫入失敗。
推薦理由
此研究揭示 PostgreSQL 在 XFS 上因 fsync 失敗被忽略而導致資料損毀,提醒開發者必須對 fsync 失敗採取 PANIC 或其他保護機制。
信源出處danluu.com
Fsyncgate: errors on fsync are unrecovarable
本文為 888news 精選之重點導讀。若需閱讀作者完整原文、技術細節與官方討論,請前往原始網站。
來源: Dan Luu Blog (danluu.com)
開啟原文