[pgsql-jp: 25150] Re: PostgreSQL停止時の動作について

Yutaka tanida yutaka @ hi-net.zaq.ne.jp
2002年 3月 8日 (金) 13:16:05 JST


谷田です。

On Fri, 08 Mar 2002 08:49:51 +0900
tuda <tuda @ yit.yokogawa.co.jp> wrote:

 
>  pg_ctl -m モード stopでの停止時の動作についてマニュアル
>  を確認すると、
>  モード: i:即時停止
>         データベースを正しく終了せずに即時停止する。
>         次の起動時にリカバリ処理が走る
>       f:高速停止
>         既存の接続を即時停止し、データベースは正常に
>         クローズする
>       s:スマート停止
>         全てのクライアントがなくなるまでデータベースを
>         クローズしない
>  となっているのですが、処理を実行しているユーザがいたときの
>  iとfの動作の違いがわかりません。

postmaster/backendの終了処理が実行されるかどうか、という違いがあります。

>  sでは、処理が終わるまで待つと思うのですが、iとfでは行ってい
>  る処理(長い更新等)はどうなるのでしょうか?

i : 次回起動時のリカバリによってROLLBACKされる。
f : 終了時にキャンセル扱いになる。

だと思います。ポイントは、次回起動時のリカバリ処理がごくまれに(バグなど
の原因により)失敗する可能性がある、というところでしょうか。ま、普通は気
にする必要はないと思いますが。

一般的には、よほどのことがない限りiを使う理由はないと思います。

-- 
Yutaka tanida <yutaka @ hi-net.zaq.ne.jp>




pgsql-jp メーリングリストの案内