DBアタマアカデミー 第2回トランザクションを知ればデータベースがわかる―「データ復旧」「同時実行制御」を行う“不完全な”しくみ(2) トランザクションが「終わる」のはいつか ところで、前回で私は、「『障害発生前に終了しているトランザクションの変更は救う』というのが耐久性(D)の定義だ」と述べましたが、このときの「終了している」とはどういう意味なのでしょう。言い換えると、トランザクションは、いったいいつ「終わる」のでしょう。 COMMIT/ROLLBACKには時間がかかる 直観的に考えれば、それは「COMMIT(またはROLLBACK)が実行されたとき」です。そして、ここにおいて私たちとDBMSとの間に認識のズレはありません。障害発生前にCOMMITまでたどり着いたトランザクションは、障害後にも救われます。そんなの当たり前のことではないか、と思うかもしれませんが、DBMSの内部処理とい
![第2回 トランザクションを知ればデータベースがわかる―「データ復旧」「同時実行制御」を行う“不完全な”しくみ(2) | gihyo.jp](https://cdn-ak-scissors.b.st-hatena.com/image/square/8681a5f43e0c02b3b52f227f3ccbaa80f652ab94/height=288;version=1;width=512/https%3A%2F%2Fgihyo.jp%2Fassets%2Fimages%2FICON%2F2010%2F652_db-academy.png)