リリース日: 2012-09-24
このリリースは9.2.0に対し、各種不具合を修正したものです。 9.2メジャーリリースにおける新機能についてはE.102を参照してください。
9.2.Xからの移行ではダンプ/リストアは不要です。
しかしながら、以下の変更履歴の最初に記述されているデータ破損の不具合の影響から復旧させるために、REINDEX
および、あるいはVACUUM
の操作を実行する必要があるかもしれません。
WAL再生時の共有バッファの永続性の印付けを修正しました。(Jeff Davis)
この間違いにより、チェックポイント時にバッファが書き出されないことがありました。 その結果、その後もそのバッファを書き出すことなくサーバがクラッシュすると、データ破損が発生することになります。 データ破損は、クラッシュからの復旧の後はどのサーバでも発生する可能性がありますが、特にスタンバイのスレーブサーバではWAL再生を実行する回数がずっと多いですから、この問題が発生する可能性もずっと高くなります。 btreeおよびGINインデックスが破損する可能性は低いです。 テーブルの「可視性マップ」が破損する可能性はずっと高く、これによりインデックスオンリースキャンが誤った結果を返す可能性があります。 テーブルデータの内容はこの不具合によって破損することはありません。
この不具合のためにインデックスが破損したという既知の事例はありませんが、念のため、稼働用のインストレーションでは、9.2.1にアップグレードした後、都合の良い時に、すべてのbtreeおよびGINインデックスについてREINDEX
を実行することを勧めます。
また、vacuum_freeze_table_age
を0に設定して、すべてのテーブルについてVACUUM
を実行することを勧めます。
これにより、すべての不正な可視性マップのデータが修正されます。
vacuum_cost_delay
を調整して、バキュームがパフォーマンスに与える影響を小さくすることができます。
ただし、それによりバキュームが終了するまでの時間は長くなります。
WHERE
を含む問い合わせの結果のソートが正しくない場合があるのを修正しました。(Tom Lane)
indexed_column
IN (list_of_values
)
GROUP BY
でウィンドウ関数および集計関数を含む式がある問い合わせに対して、プランナがエラーになることがあるのを修正しました。(Tom Lane)
プランナによるエグゼキュータのパラメータの代入について修正しました。(Tom Lane)
この間違いにより、同じWITH
の副問い合わせを複数回スキャンする問い合わせについて、間違った結果を返すことがありました。
インデックススキャンの結合条件について、プランナの処理を改善しました。(Tom Lane)
接頭辞、つまりword
:*
のパターンを含むテキスト検索の問い合わせについて、選択性の推定を改善しました。(Tom Lane)
権限の変更についての遅延した認知を修正しました。(Tom Lane)
自分のトランザクションで既に保持しているロックだけしか必要としないコマンドは、それと同時のGRANT
またはREVOKE
で、そのトランザクションの開始よりも後に実行されたものに気付かない場合がありました。
列が配列型のドメインである場合に、ANALYZE
がエラーとならないよう修正しました。(Tom Lane)
PL/Perlの再帰関数が実行時に再定義される場合に、PL/Perlがクラッシュしないようにしました。(Tom Lane)
PL/Perlで正しく最適化されない場合があるのを回避しました。(Tom Lane)
一部のLinuxディストリビューションでは、誤ったバージョンのpthread.h
がインストールされており、PL/Perlのコンパイルされたコードが誤ったものになります。
この結果、PL/Perlの関数がエラーを発生させる他の関数を呼び出すと、クラッシュすることがありました。
pg_upgradeのpg_configへの依存は、不要なので取り除きました。(Peter Eisentraut)
時間帯データファイルをtzdataリリース2012fに更新しました。 フィジーでの夏時間の変更が含まれます。