[PHP-dev 159] Re: PostgreSQL Session Save Handler Module.

Youichi Iwakiri php-dev@php.gr.jp
Thu, 20 Dec 2001 12:43:59 +0900


いわきりです

Tatsuo Ishii wrote in <20011220111905B.t-ishii@sra.co.jp>:
 >> PostgreSQLの現仕様上致し方無いのですが、GCを行い無効SESSIONIDを
 >> 削除してもテーブルサイズは肥大化していく一方なので、先に述べた
 >7.2では,vacuumをかければ削除行が再利用されるので,テーブル領域の大半がゴ
 >ミという事態はなくなると思います.

実は大いに期待しています。
Software Design誌の2001/11号に石井さんが寄稿されている
内容を読んでますので :-)

 >> 「個人的には、wwwのownerにはDB作成権限、テーブル作成権限を付与したく
 >>  ないと考えています。」
 >DBの作成権限を奪うことはできますが,テーブルの作成権限を奪うことはでき
 >ないと思います.

実は、PostgreSQLを使用しはじめてから3年ほど経ちましたが
これは知りませんでした。
DBのオーナのみがテーブルを作成でき、他のユーザにオーナーが作成した
テーブルの権限を付与するものだと思い込んでいました。
#実際そのようにテーブルを作成してましたしhttpdのオーナー自体にloginを
許していなかったので試したことも無かったようです。PostgreSQLのオーナーである
pgsqlの作成したDBに一般のユーザで接続しCREATE TABLEすると作成できました。
お恥ずかしい限りです。

 >> とは裏腹にvacuumの自動実行をmod_pgsqlに機能として追加する必要性も
 >> ありかなと思います。
 >7.3あたりで実装されそうな雰囲気もあるのですが,とりあえずは7.2の削除行
 >再利用機能でしのげるのではないでしょうか.

私の実験用のシステムであれば幾らでも試せるので、それでしのぐと思います :-)

実運用するサイトではPostgreSQL 7.2 or laterとの組み合わせで
即サーバを構築し公開とは行かないと思っています。
新機能(WAL等)が搭載された7.1系が公開され自社内での評価期間を
置いてこれから公開しようとする所がまだまだ出てくるでしょうし
mod_pgsqlが接続対象とするPostgreSQLのバージョンを7.2 or laterと
するのはまだ時期的に早過ぎるのではと思います。

現状において稼動実績が有るものを新バージョンに移行するのは
非常に慎重にならざるをえません。