-919 A ROLLBACK OPERATION IS REQUIRED
説明
作業単位は、ロールバック操作が必要な状態に置かれました。
これは、次の理由で生じる場合があります。
- SQL ステートメントが分散データベース・サーバーを更新したが、
データベース・サーバーは読み取り専用操作にしか使用できない。 更新が現在、分散 2 フェーズ・コミットをサポートするサーバーに限定されているが、
このアプリケーション・サーバーが分散 2 フェーズ・コミットをサポートしないか、あるいは、
更新が、分散 2 フェーズ・コミットをサポートしない単一サーバーに限定されているが、
このアプリケーション・サーバーがそのようなサーバーでないか、のいずれかです。
アプリケーション・サーバーで行われた (ただしまだコミットされていない) 更新は、 この分散作業単位に対して行われた他の現在の更新または将来の更新と首尾一貫して コミットすることができないので、ロールバック操作によって、 この作業単位を終了させる必要があります。
- ストアード・プロシージャーの実行時に異常終了が発生したか、 制限された SQL ステートメントがストアード・プロシージャーから出された。
- 関数の実行時に異常終了が発生したか、 制限された SQL ステートメントが関数から出された。
- この作業単位が、グローバル・トランザクションの一部であり 、グローバル・トランザクションの別作業単位が ROLLBACK を開始済 みである。グローバル・トランザクション内のすべての作業単位が、ここで ROLLBACK を 行う必要があります。
システムの処置
IMS™ および CICS® 環境では、ロールバックされるまで、 すべての SQL ステートメントは拒否されます。 他の環境では、静的 ROLLBACK が実行されるまで、静的 ROLLBACK 以外の すべての SQL ステートメントは拒否されます。
プログラマーの応答
アプリケーションまたはストアード・プロシージャーを訂正し、 バインドし直してから、ジョブを再実行依頼してください。
前の障害を検出し、アプリケーションをアボート必須状態に置いたモジュールの名前が、 SQLERRP に含まれています。
SQLSTATE
56045