リリース日: 2010-03-15
このリリースは8.3.9に対し、各種の不具合を修正したものです。 8.3メジャーリリースにおける新機能についてはE.171. リリース8.3を参照してください。
8.3.Xからの移行ではダンプ/リストアは不要です。 しかし、8.3.8以前のバージョンからアップデートする場合は、E.163. リリース8.3.8を参照してください。
SSL接続においてセッションキーの再調停をどの程度の頻度で行うかを制御するssl_renegotiation_limit
設定パラメータを新しく追加しました。(Magnus)
これをゼロに設定することで、再調停を完全に無効にすることができます。 これは壊れたSSLライブラリを使用している場合に必要になる可能性があります。 具体的には一部のベンダは再調停の試行を失敗させるCVE-2009-3555に対する一時しのぎのパッチを提供しています。
バックエンド起動時のデッドロックの可能性を修正しました。(Tom)
relcacheの再読み込みがきれいに行われている間にエラーを扱わないことが原因でクラッシュする可能性を修正しました。(Tom)
保管された計画への宙ぶらりんのポインタを使用することが原因でクラッシュする可能性を修正しました。(Tatsuo)
副トランザクション起動時における失敗からのリカバリを試行する時にクラッシュする可能性を修正しました。(Tom)
セーブポイントの使用およびサーバの符号化方式と異なるクライアント符号化方式に関連したサーバのメモリリークを修正しました。(Tom)
GiSTインデックスページ分割のリカバリ終了時の整理において生成される不正なWALデータを修正しました。(Yoichi Hirai)
これはインデックスの破損という結果となり、WAL再生中にエラーが発生します。 もし運が悪ければ、未完全のGiST挿入に成功した後にリカバリ終了時の整理が行われている時にクラッシュしてしまいます。
bit
型のsubstring()
では、いかなる負の長さも「文字列の残りすべて」を意味するようにしました。(Tom)
これまでのコードでは-1のみを上のように扱い、他の負の値についてはクラッシュする可能性がある無効な結果値を生成しました。(CVE-2010-0442)
出力ビット幅が指定された整数よりも広く、それが8ビットの倍数以外である場合、先頭の端数のバイトを正確に扱うように整数からビット列への変換を修正しました。(Tom)
正規表現マッチが異常なまでに低速になる一部の状況を修正しました。(Tom)
ずさんなメモリ管理によって引き起こるxml
の雑多なクラッシュを修正しました。(Tom)
これは先に8.4に適用された変更の後戻りのパッチです。 8.3のコードは不具合が多いことが知られていましたが、何らかの実地試験を受けるまで後戻りのパッチをしようとは思わないほど新しいコードはかなり変更されていました。
複合型の配列の列の要素フィールドを更新する場合の不具合を修正しました。(Tom)
終了位置が正確にセグメント境界であった場合、次のWALセグメント名を報告するようにバックアップ履歴ファイル内のSTOP WAL LOCATION
を修正しました。(Itagaki Takahiro)
一時ファイルが漏洩する一部の状況を修正しました。(Heikki)
これは前のマイナーリリースでもたらされた問題を修正します。 失敗する状況の1つは集合を返すplpgsql関数が他の関数の例外ハンドラ内で呼び出された場合です。
論理値変数の場合の制約による排他処理を改良しました。 具体的には、「bool_column = false」制約を持つパーティションを除外することができるようになりました。(Tom)
pg_hba.conf
とその関連ファイルを読み取る時、@
が引用符記号の内部にある場合に@something
をファイル包含要求と扱わないようにしました。
また、@
自身をファイル含有要求として扱いません。(Tom)
ロールまたはデータベース名が@
から始まる場合の一定しない動作を防止します。
空白文字を含むパス名のファイルを包含する必要がある場合、まだ実現させることはできますが、式全体を引用符でくくるのではなく@"/path to/file"
と記述しなければなりません。
ディレクトリがpg_hba.conf
とその関連ファイル内で含有対象と指定されていた場合の一部のプラットフォームにおける無限ループを防止します。(Tom)
SSL_read
またはSSL_write
がerrno
を設定することなく失敗した場合に無限ループする可能性を修正しました。(Tom)
一部の報告ではopensslの一部のWindows版で発生する可能性がありました。
正しく動作させるためにホスト名が必要ですので、ローカル接続ではGSSAPI認証を許しません。(Magnus)
接続が消失した場合ecpgに適切なSQLSTATEを報告させるようにしました。(Michael)
latexおよびtroff出力書式では行うべきではない文字列の書式付けを行わないようにpsqlのnumericlocale
オプションを修正しました。(Heikki)
ON_ERROR_STOP
と--single-transaction
の両方が指定され、かつ、暗黙的なCOMMIT
時にエラーが起きた場合に、psqlが正しい終了コード(3)を返すようにしました。(Bruce)
複合列がNULLに設定される場合にplpgsqlが失敗することを修正しました。(Tom)
PL/PerlUからのPL/Perl関数の呼び出し、およびその逆の場合において失敗する可能性を修正しました。(Tim Bunce)
コンパイラ固有の誤動作が起こる可能性を防ぐためにPL/Python内にvolatile
記号を追加しました。(Zdenek Kotala)
PL/Tclは確実にTclインタプリタを完全に初期化します。(Tom)
このミスの既知の兆候は、Tcl 8.5以降を使用している場合のTclのclock
コマンドの誤動作だけです。
dblink_build_sql_*
関数であまりに多くのキー列が指定された場合のcontrib/dblink
のクラッシュを防止します。(Rushabh Lathia, Joe Conway)
contrib/ltree
操作においてゼロ次元の配列を許可します。(Tom)
この状況は以前はエラーとして拒絶されました。
しかしこれを要素ゼロの配列と同様に扱う方がより簡便です。
特にこれは、ltree
演算子がARRAY(SELECT ...)
の結果に適用され、副問い合わせが行を返さない場合の不要な失敗を防止します。
ずさんなメモリ管理によって引き起こるcontrib/xml2
の雑多なクラッシュを修正しました。(Tom)
Windowsにおいてcontrib/xml2
の構築をより堅牢にしました。(Andrew)
Widowsのシグナル処理における競合状態を修正しました。(Radu Ilie)
この不具合の兆候として既知のものは、負荷が高い状況においてpg_listener
内の行が削除されることです。
時間帯データファイルをtzdata release 2010eに更新しました。 バングラデシュ、チリ、フィジー、メキシコ、パラグアイ、サモアにおける夏時間規則の変更が含まれます。