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

tuda tuda @ yit.yokogawa.co.jp
2002年 3月 8日 (金) 14:34:24 JST


津田です。

もう少し考えてみました。
PostgreSQLはWALを導入することで、クラッシュしてもデータ
の整合性が保証されるようになりました。
ということは、iモードで落とした場合でも次回起動時の
リカバリ処理でデータの整合性(コミットされたデータのみ
反映され、停止時にコミットされていない処理についてはロー
ルバック)は保証されるのではないでしょうか。

まとめると、
i :処理中のトランザクションはロールバックが保証される。
  ただし次回起動時にリカバリ処理(ロールバック)。
f :処理中のトランザクションはロールバックが保証される。
  停止時にロールバック処理。起動時はリカバリなし。

ということでしょうか?

先ほど、以下の返信メールの件名を間違えてしまいました。
申し訳ございません。
> 谷田さん、昨日に続いて回答ありがとうございます。
> 
> 結局最終的に実行中の更新処理は、
> > i : 次回起動時のリカバリによってROLLBACKされる。
> ロールバックされる。
> > f : 終了時にキャンセル扱いになる。
> キャンセル→ロールバックされる。
> ということでしょうか?
> 確かに実際に試してみると、そのような動きになって
> いるようなのですが、それがたまたまなのか、そうなる
> べくしてなっているのかが気になりました。
> 
> マニュアルを読んでいて僕が予想した仕様としては、
> i :どうなるか保証がない(ロールバックされることも
>   あるし、途中まで反映されてしまうこともある)
> f :ロールバックされる
> 
> と思っていました。



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