リリース日: 2015-06-04
このリリースは9.4.2に対し、少数の不具合を修正したものです。 9.4メジャーリリースにおける新機能については、E.52を参照してください。
クラッシュ再起動にてデータディレクトリをfsync
するときの失敗を回避しました。
(Abhijit Menon-Sen, Tom Lane)
前のマイナーリリースで私たちはクラッシュ後にデータディレクトリ中のすべてにfsync
をする修正を加えました。残念ながらそれはあらゆるエラー状態に応えることができず、全く無害な問題にもかかわらず、そのためにサーバ起動を妨げていました。
一例としては、サーバでSSL証明書ファイルを書き込み不可とするのは一般的であるにも関わらず、一部のプラットフォームでデータディレクトリ内の書き込み不可ファイルが再起動を妨げるおそれがありました。
この振る舞いを、権限上の失敗は概ね無視し、他種の失敗もログ出力しても処理継続を妨げないように、修正しました。
同じ規則をinitdb --sync-only
にも適用しました。
こちらの場合、重大性は低いですが、同じように動作すべきです。
pg_get_functiondef()
を設定されているなら関数のLEAKPROOF
属性を表示するように修正しました。
(Jeevan Chalke)
pushJsonbValue()
をjbvBinary
オブジェクトを展開するように修正しました。
(Andrew Dunstan)
この変更は、9.4本体コードのいかなる振る舞いにも影響しませんが、サードパーティ呼び出しでの例外的な問題ケースの可能性を回避します。
OpenBSDにおけるconfigureのスレッド対応したlibpythonへのリンクを禁止する検査を取り除きました。 (Tom Lane)
この制限で防止を意図していた失敗は、現在のOpenBSDバージョンではもはや問題なくなっていると考えられます。