アクティブトランザクションとは、開始済みであるが、まだコミットまたはロールバックされていないトランザクションを指します。アクティブトランザクションによる変更は、コミット前は一時的なものであり、他のトランザクションからは見えません。 state フィールドの値が表す意味は、次の表のとおりです。
state の値 |
説明 |
|---|---|
| INIT | トランザクションがアクティブ状態にあり、すべての変更は他のトランザクションから見えないことを示します。 |
| REDO COMPLETE | トランザクションがすべてのデータをログ形式で正常に永続化したことを示します。 |
| PREPARE | トランザクションのコミットが開始され、現在 PREPARE 状態にあることを示します。このトランザクションの変更を読み取るとき、フェイルオーバーが発生する可能性があります(バージョン番号によって異なります)。 |
| PRECOMMIT | トランザクションがコミット寸前であり、コミットバージョン番号を関連するすべての参加者に同期していることを示します。 |
| COMMIT | トランザクションのコミットが開始され、現在 COMMIT 状態にあることを示します。他のトランザクションはこのトランザクションの変更を見ることができます(バージョン番号によって異なります)。 |
| ABORT | トランザクションがロールバックされ、ABORT 状態にあることを示します。他のトランザクションはこのトランザクションの変更を見ることができません。 |
| CLEAR | トランザクションのコミットまたはロールバックが終了し、CLEAR 状態にあることを示します。 |
アクティブトランザクションのデータストレージに関する詳細は、マルチバージョン読み取りの一貫性を参照してください。