PrevChapter 27. リリースノートNext

リリース 6.1

NOTE: This should include information based on Bruce's release summary. ここには,Bruce のリリース・サマリーに基づく情報があるほうが いいですね.

The regression tests have been adapted and extensively modified for the v6.1 release of PostgreSQL. PostgreSQL の v6.1 リリースのために,下位互換性テストが対応されて きており,広範囲に渡って改修されてきています.

Three new data types (datetime, timespan, and circle) have been added to the native set of PostgreSQL types. Points, boxes, paths, and polygons have had their output formats made consistant across the data types. The polygon output in misc.out has only been spot-checked for correctness relative to the original regression output. 新しい3つのデータ型 (datetime, timespan, および circle) がネイティブ のPostgreSQL 型セットに追加されました.点(point), 四角形(box), パス(path), および 多角形(polygon) において,データ型を問わず,矛盾 なく出力フォーマットが得られるようになりました.misc.out における 多角形の出力では,オリジナルの下位互換出力に関連する修正のために, 一部のみの検査が行われてきました.

PostgreSQL v6.1 introduces a new, alternate optimizer which uses genetic algorithms. These algorithms introduce a random behavior in the ordering of query results when the query contains multiple qualifiers or multiple tables (giving the optimizer a choice on order of evaluation). Several regression tests have been modified to explicitly order the results, and hence are insensitive to optimizer choices. A few regression tests are for data types which are inherently unordered (e.g. points and time intervals) and tests involving those types are explicitly bracketed with set geqo to 'off' and reset geqo. PostgreSQL v6.1 では,今までのものとは異なり,遺伝 アルゴリズムを用いた新しい最適化機構(optimizer)を採用します. これらのアルゴリズムでは,問い合わせに複数の修飾子や複数の表が 含まれている(最適化機構に対して評価順序の選択権を与える)場合, 問い合わせ結果の並び替えを行う際の振る舞いが無作為となります. 下位互換性テストは,明示的に結果を要求するように変更されたため, 最適化機構の選択には無関係です.本来並べ替えられることのない (点や時間間隔などの)データ型のための,ごく少数の下位互換性テスト がありますが,これらの型を含むテストを行う場合は明示的に []で 括り,かつset geqo to 'off'および reset geqoを使う必要があります.

The interpretation of array specifiers (the curly braces around atomic values) appears to have changed sometime after the original regression tests were generated. The current ./expected/*.out files reflect this new interpretation, which may not be correct! 配列指定子(原子値(atomic values)を {} でくくったもの)の解釈は, オリジナルの下位互換性テストが作られた時から何回か変更された ようです.現在の./expected/*.outファイルは この新しい解釈が反映されており,正しくない結果を返すかも しれません.

The float8 regression test fails on at least some platforms. This is due to differences in implementations of pow() and exp() and the signaling mechanisms used for overflow and underflow conditions. float8 下位互換性テストは,少なくともいくつかのプラットフォーム においては失敗します.これは,pow() と exp() の実装の違い,および オーバーフロー,アンダーフロー状態時に使用されるシグナル・メカニズム の違いによるものです.

The "random" results in the random test should cause the "random" test to be "failed", since the regression tests are evaluated using a simple diff. However, "random" does not seem to produce random results on my test machine (Linux/gcc/i686). 乱数テストにおける「ランダムな」結果により乱数テストが失敗する場合が あります.これは,下位互換性テストが単純な diff を使って評価される からです.しかしながら,私のテストマシン(Linux/gcc/i686)においては, 「ランダム」がランダムな結果を出力しているようには見えません.

Release 6.2Upタイミングによる結果(Timing Results)