リリース8.0.16

PostgreSQL 9.0.0文書
前のページ | 巻戻し | 付録 E. リリースノート | 早送り | 次のページ

# E.68. リリース8.0.16

> リリース日: リリースされませんでした

このリリースには8.0.15からの各種修正が含まれています。 8.0メジャーリリースにおける新機能については項E.84を参照してください。

## E.68.1. バージョン8.0.16への移行

8.0.Xからの移行ではダンプ/リストアは不要です。 しかし、8.0.6より前のバージョンからアップグレードする場合は、8.0.6のリリースノートを参照してください。

## E.68.2. 変更点

- 新しい列がすべて非NULLに初期化されていることが正しく検査されるように`ALTER TABLE ADD COLUMN ... PRIMARY KEY`を修正しました。(Brendan Jurd)

  これまでのバージョンでは、この必要条件の検査をまったく行っていませんでした。

- "同じ"制約を、共通の祖先からその制約を継承する複数の親リレーションから継承する場合に、`CREATE TABLE`が失敗する可能性を修正しました。(Tom)

- キリル語の"Yo"文字（2つのドットを持つ`e`と`E`）を扱うISO-8859-5と他の符号化方式との間の変換を修正しました。(Sergey Burladyan)

- 複数のデータ型入力関数、特に、結果に初期化されず予測できない値を含む未使用のバイトを許す`array_in()`を修正しました。(Tom)

  これは、2つの明らかに同じリテラル値が等しいとみなされず、結果パーサは一致しない`ORDER BY`および`DISTINCT`式に関して不平をいうといったエラーをもたらします。

- 正規表現副文字列一致（`substring(`string` from `pattern`)`）における境界状態を修正しました。(Tom)

  この問題は、パターン全体は一致するが、ユーザが括弧付きの副式を指定し、その副式が一致しなかった時に発生します。 例えば、`substring('foo' from 'foo(bar)?')`です。 `(bar)`は一致しませんので、これはNULLを返すべきです。 しかし、間違ってパターン全体が一致（つまり`foo`）という結果を返していました。

- 時間帯データファイルをtzdataリリース2008c（モナコ、イラク、チョイバルサン、パキスタン、シリア、キューバ、アルゼンチン/サンルイスにおける昼時間規則の変更）まで更新しました。

- ecpgの`PGTYPEStimestamp_sub()`関数からの不正確な結果を修正しました。(Michael)

- 入力問い合わせがNULL値を返す場合の`contrib/xml2`の`xpath_table()`関数のコアダンプを修正しました。(Tom)

- `contrib/xml2`のmakefileが`CFLAGS`を上書きしないように修正しました。(Tom)

- `DatumGetBool`マクロがgcc 4.3でエラーにならないよう修正しました。 (Tom)

  この問題は、論理値を返す"古い形式" (V0)のC関数に影響します。 これは8.3ではすでに修正されていましたが、当時なかったバックパッチが必要になりました。

- 長い間存在した`LISTEN`/`NOTIFY`の競合条件を修正しました。(Tom)

  まれな状況において、`NOTIFY`を実行する同時実行のトランザクションが後にコミットされたことが観測されたために想定されたとしても、`LISTEN`だけを実行するセッションが注意を受け取らない可能性がありました。

  この修正の副作用として、`LISTEN`コマンドをまだコミットしていないトランザクションでは`LISTEN`用の`pg_listener`内の行を参照しなくなります。 これは検索するために選択すべきもので、これまではできていました。 この動作はできるともできないとも文書化されていませんが、一部のアプリケーションで古い動作に依存している可能性があります。

- ハッシュインデックスを使用する問い合わせ中でエラーが発生した場合の、稀なクラッシュを修正しました。(Heikki)

- 紀元前の2月29日に関する日付時刻値の入力を修正しました。(Tom)

  これまでのコードにはうるう年の決定に間違いがありました。

- `ALTER OWNER`の一部の構文における"unrecognized node type"エラーを修正しました。(Tom)

- コマンドラインオプションからpostmasterのポート番号を正しく取り出せるようpg_ctlを修正しました。(Itagaki Takahiro, Tom)

  これまでの`pg_ctl start -w`では間違ったポート上のpostmasterに接続しようとし、起動失敗に関するおかしな報告を引き起こしました。

- 最近のバージョンのgccにおける間違った最適化の可能性を抑えるために`-fwrapv`を使用します。(Tom)

  これはPostgreSQLをgcc 4.3以降で構築する時に必要であることは分かっていました。

- `ORDER BY`および`GROUP BY`内の定数式の表示を修正しました。(Tom)

  明示的にキャストされた定数が不正確に表示されました。 これは例えば、ダンプ/リストア時にビュー定義を壊す可能性がありました。

- COPY OUT時にNOTICEメッセージを正しく扱うようlibpqを修正しました。(Tom)

  このエラーは、ユーザ定義のデータ型出力ルーチンがNOTICEを発行する時に起こることのみが観測されていました。 しかし、他が原因で発生していないという保証はありません。

前のページ | ホーム | 次のページ
リリース8.0.17 | 上に戻る | リリース8.0.15