未完了の(コミットされていない)トランザクションがあるとします。オラクルは、あなたが質問で言ったことをすべて行いました。
これで、マシンがクラッシュします。
DBAは、マシンのリカバリ後(または新しいマシンでは:))、最後のバックアップを復元し、すべてのREDOログを適用します 新しいインスタンスで。 REDOには、ステップ1で実行された作業も含まれます。ただし、その作業はコミットされていないため、エンジンはそれをロールバックする必要があります。このためには、ロールバックセグメントが必要です。ただし、手順3でログに記録しなかった場合、ロールバックセグメントは表示されません。
私はあなたが今尋ねることを知っています:なぜそれがコミットされていない仕事にログを適用するのですか?それについて読んだときも、それが私の質問でした。よくわかりませんが、もっと簡単かもしれません。コミットされたトランザクションの一部であるログのすべてのエントリをチェックするのは難しいかもしれません。ただし、これがOracleの仕組みです。すべてのREDOログを適用してから、コミットされていないトランザクションをロールバックします。