Symfoware Serverでデッドロックが発生した直後のコミット処理について
- デッドロックによりSQL文のエラーが発生した直後にCOMMIT文を実行した場合、COMMIT文は正常終了していますが、トランザクションはロールバックされているようです。何が起きているのですか?
- デッドロックによるエラーが発生すると、トランザクション全体がロールバックされます。このときアプリケーションがエラー判定をせずに処理を続行してエラー直後にCOMMIT文を実行した場合、COMMIT文は正常終了します。これは、SQL文が何も実行されていない状態でCOMMIT文だけを実行したことになるからです。もともと実行していたトランザクションは、デッドロックエラー発生時点でロールバックされているため、データの更新は取り消された状態になります。
製品・サービス区分 | Symfoware | ||||
---|---|---|---|---|---|
製品・サービス情報 |
|
||||
アンサー種別 | 技術サポート |