反復試行モードで動作するように XA 再接続プロセスを構成するには、ES_XA_%xaname%_OPTIONS 環境変数を設定します。
ES_XA_%xaname%_OPTIONS 環境変数の設定
- ES_XA_%xaname%_OPTIONS=[<reconnect_attempts>,<wait>][EX]
- この環境変数は、反復試行モードで動作させる必要がある RM ごとに設定します。変数名の %xaname% の部分を MFDS または ESCWA で指定されている RM の名前に置き換えます。ターゲットの RM への再接続を試行する回数 (最大 9999) および次の試行までの遅延時間 (秒数) を指定します。変数を EX に設定すると、ターゲットの RM が XA 再接続処理から除外されます。
次に例を示します。
- XA 再接続処理で MQPROD への再接続を最大 100 回試行し、各再接続試行の間に 10 秒間待機する場合は、次のように指定します。
ES_XA_MQPROD_OPTIONS=100,10
- XA 再接続処理で XA 再接続処理から MQPROD を除外する場合は、次のように指定します。
ES_XA_MQPROD_OPTIONS=EX
反復再接続処理
この構成では、トランザクションの実行時に毎回 xa-ping が試行されます。失敗した場合、XA 再接続処理は xa-close、xa-open、xa-ping でループします。xa-ping で戻りコード 0 を受け取るまで、指定された期間
(秒単位) 待機してから、この処理が繰り返されます。ループの終了時に接続が再確立されていない場合、RM は無効になり、RM が無効になったことを示す重大エラーがコンソールに表示されます。
ターゲット RM を再度有効にするには、動的 XA を使用する必要があります。動的 XA は、リージョンの存続期間中に XA RM を無効にして再度有効にする機能を提供します。