X

pgpool 2.6 alpha

(Last Updated On: )

pgpool 2.6の人柱を募集中とのことです。こういったものは広く告知した方がよいのでpgsql-jp MLのメッセージをそのまま貼り付けます。

石井です.

久々にpgpoolのバージョンアップをしようとしています.ついては,できたばかりのV2.6のアルファ版を,

http://www2b.biglobe.ne.jp/~caco/pgpool/tmp/pgpool-2.6.tar.gz

に置きましたので,人柱になっても良い,という方は是非ご協力をお願いします.

2.6の目玉は,SERIAL型への対応です.といっても,やっていることはごく単純で,INSERT文があったらそのテーブルに自動的にテーブルロックをかけるだけです.トランザクションの並列実行性は犠牲になりますが,SERIAL型の列がマスタとセカンダリで一致しなくなることは防げます.

ちなみに自動ロックの機能はSERIAL型を含まないテーブルにも働いてしまいます:-)回避方法はREADME.euc_jpをご覧下さい.

以下,2.5.2からの変更点のリストを付けておきます.
——————————————————————-
o pool_error etc.で,asprintfの後でfreeしていなかったのを修正.

o main.cで,mallocのサイズが誤ってpool_config.num_init_children
* sizeof(pool_config.num_init_children)
になっていたのをpool_config.num_init_children * sizeof(pid_t)に修正.

o parameter statusの値が一致していなくてもエラーにならないようにした(USとNZでレプリケーションしている例があった!).

o pgpool stopで終了せず,一旦killされた後,pgpool -m f stopを受け付けなくなるバグを修正.

o 新しいディレクティブinsert_lockを追加.trueの場合,INSERT実行時に自動的にテーブルロックを行う.これにより,SERIAL型を含むテーブルの同期を取ることができる.なお,/*NO INSERT LOCK*/コメントを付けると,そのINSERT文のみテーブルロックを行わない.あるいはinsert_lockがfalseでも/*INSERT LOCK*/コメントを付けるとテーブルロックを行う.

o 2.5.2で追加された「strictモードであっても,SELECTだったらsecondaryの完了を待たない」仕様を取りやめ.代りに,/*NO STRICT*/コメントを追加.

o show pool_statusに新しい情報を追加.縮退やフェイルオーバ状況を分かりやすく表示するようにした.
server_status| master( on 5432) up secondary( on 5433) down| server status
——————————————————————-

Tatsuo Ishii

Categories: Computer Database
Tags: PostgreSQL
yohgaki:
Leave a Comment