16.7.3 強制終了対象のトランザクション
強制終了対象のユーザ起動トランザクションを次の表に示します。
|
項番 |
トランザクション種別 |
トランザクション強制終了時の動作 |
トランザクション強制終了後の後処理 |
|---|---|---|---|
|
1 |
MN |
スレッドダウン |
E3,UT起動 |
|
2 |
E2 |
スレッドダウン |
なし |
|
3 |
E3 |
スレッドダウン |
UT起動 |
|
4 |
E4 |
スレッドダウン |
なし |
|
5 |
ER |
スレッドダウン |
なし |
|
6 |
RM |
スレッドダウン |
E3,UT起動 |
|
7 |
TM |
スレッドダウン |
E3,UT起動 |
|
8 |
RL |
スレッドダウン |
なし |
|
9 |
CU |
スレッドダウン |
E3,UT起動 |
トランザクション強制終了の閾値を超過してから,実際にトランザクションが強制終了されるまで,最大でclock_time_interval指定値の遅延があります。
強制終了されるのは非保護区のトランザクションだけです。
保護区またはTP1/EE提供APIを実行中のトランザクションは,次のタイミングで強制終了されます。なお,保護区の状態で,トランザクション静止化コマンドがタイムアウトエラーになった場合,それ以降は強制終了されません。
-
UAP内で非保護区に遷移(ee_thd_protend発行)
-
TP1/EE提供APIのリターン直前(UAP内が非保護区の場合だけ)
TP1/EE提供APIのee_rpc_call(),ee_rpc_call_to(),およびee_rpc_poll_any_replies()内で応答待ちの状態で,トランザクション静止化待ちが閾値を超過した場合,応答待ちをキャンセルします※。
キャンセル後の動作は次のとおりです。
-
非保護区の場合:スレッドダウン
-
保護区の場合
-
通信プロトコルがRPCの場合:EERPCER_TIMED_OUT(-307)でエラーリターン
-
RAPの場合:EERPCER_NET_DOWN(-306)でエラーリターン
-
なお,応答待ちのキャンセルは即時に行われるのではなく,最大でclock_time_interval定義値+rpc_reply_watch_interval定義値分,遅延することがあります。
- 注※
-
rpc_reply_watch_interval定義に1以上を指定している場合