1999-06-09このリリースは、開発チームが、バークレイから継承したソースコードに熟達した段階であることを示します。大きな機能を簡単に追加できるようになったことが判るでしょう。全世界にわたる開発チームの規模と経験が増えたおかげです。(MVCC)これは、古いテーブルレベルロックを取り去り、ほとんどの商用データベースシステムよりも優れたロックシステムで置き換えます。伝統的なシステムでは、変更された各行はコミットされるまでは、他のユーザから読み込まれないように、ロックされます。MVCCはPostgreSQL固有の多版性を使用して、書き込み活動中のデータに対する読み込み側からの一貫性のある読み込みを可能にします。トランザクションシステムを継続して使用することができます。これによって、伝統的なデータベースシステムのような、各行に対するロックの割り当てを行うことなく、全てを行うことができます。基本的には、単純なテーブルレベルのロックによって制限することはなくなります。行レベルのロックよりも多少優れたものを持つことになりました。機能を使用して、問い合わせを実行できるオンライン状態のデータベースに対する、完全なデータベースのダンプ/バックアップができるようになりました。数値データ型ユーザ指定の精度を持つ、本当の数値データ型を持つようになりました。一時テーブル一時テーブルはデータベースセッションにおいて一意な名前を持つこと、および、セッション終了時に削除されることが保証されます。文をサポートするようになりました。コマンドを改良しました。高速化チーム内の才能による、PostgreSQLの高速化を継続して行いました。メモリ割り当て、最適化、テーブルの結合、行転送ルーチンを高速化しました。移植リストの拡張を継続して行いました。インタフェースほとんどのインタフェースは新しいバージョンになり、既存の機能は改良されました。文書全体に対して、新規のもの、更新されたものがあります。新しく配布されました。多くのユーティリティプログラムまでを範囲とするリファレンスページがあります。その付録には日付/時刻の動作の詳細があります。よるトラブル対応に関する新しい章が追加されました。よる、問い合わせ処理の説明があります。ソースツリーの入手についても説明があります。よるダンプ/リストアが必要です。テーブルのディスク上の構造がこれまでのリリースから変更されたからです。(MVCC)機能は、マルチユーザ環境下においてどこか異なる動作をもたらします。以下の節を熟読して、既存のアプリケーションが必要な動作を行うことを確認して下さい。おける読み込み操作はデータをロックしませんので、トランザクション隔離レベルに関係なく、あるトランザクションで読み込まれたデータは、他の操作によって変更されることがあります。読み込まれた行は、返された(つまり、文またはトランザクションの始まりから少し後の)時点に存在した行を意味し、現在のトランザクションがコミット、またはロールバックするまでの間、同時に実行されるトランザクションによる更新や削除から保護される行であることは意味しません。文を使用しなければなりません。以前のリリース、もしくは、他の環境からアプリケーションを移植する場合には考慮しなければなりません。トリガを参照整合性のために使用している場合は、上のことに注意して下さい。今のところ更に技術を追加しなければなりません。コマンドを使用することです。文(SELECT/INSERT/DELETE/UPDATE/FETCH/COPY_TO)を実行する前に実行しなければなりません。これらの不便な点は、ダーティー(コミットされていない)データを(隔離レベルに関係なく)読み込む機能と本当の参照整合性が実装された時になくなります。