Hitachi

Hitachi Advanced Data Binder システム構築・運用ガイド


10.2.2 HADBサーバの終了方法

HADBサーバを終了する場合,adbstopコマンドを実行してください。HADBサーバが終了します。

次のとおりにコマンドを実行してください。

adbstop
注※

adbstopコマンド実行時にオプションを指定すると,HADBサーバの終了モードを変更できます。詳細については,「(1) HADBサーバの終了モード」および「(2) オプションの指定と正常終了の種類」を参照してください。

重要

HADBサーバに接続中のAPまたはコマンドがある場合,adbstopコマンドを実行してもHADBサーバを終了できません。

〈この項の構成〉

(1) HADBサーバの終了モード

HADBサーバには,次に示す終了モードがあります。終了モードによって,adbstopコマンドに指定するオプションが異なります。

表10‒3 HADBサーバの終了モード

項番

終了モード

実行するコマンドおよびオプション

説明

1

正常終了

adbstop

通常の終了モードです。

正常終了には4種類あり,指定するオプションによって終了処理が異なります。詳細については,「(2) オプションの指定と正常終了の種類」を参照してください。

2

強制終了

adbstop --force

処理中のトランザクションの完了を待たないで,HADBサーバが終了します。

adbstop --forceコマンドを実行すると,新規のコネクション確立要求を受け付けなくなります。

処理中のトランザクションは,HADBサーバを再開始したときに回復処理の対象となります。

3

異常終了

何らかの異常によって,HADBサーバが終了する場合の終了モードです。

処理中のトランザクションの完了を待たないで,HADBサーバは終了します。

処理中のトランザクションは,HADBサーバを再開始したときに回復処理の対象となります。

(凡例)

−:実行するコマンドはありません。

(2) オプションの指定と正常終了の種類

adbstopコマンドに指定するオプションによって,正常終了時の処理が異なります。adbstopコマンドに指定するオプションと正常終了の種類を次の表に示します。

adbstopコマンドのオプションの指定形式については,マニュアルHADB コマンドリファレンスadbstop(HADBサーバの終了)を参照してください。

表10‒4 adbstopコマンドに指定するオプションと正常終了の種類

項番

実行するコマンドおよびオプション

説明

1

adbstop

adbstopコマンド(オプション指定なし)を実行すると,HADBサーバに接続中のAPおよび実行中のコマンドがない場合に,HADBサーバを終了します。

adbstopコマンドを実行する場面

HADBサーバに接続中のAPおよび実行中のコマンドがなく,正常終了したい場合に,このコマンドを実行してください。

adbstopコマンド実行時の処理

adbstopコマンドを実行してHADBサーバの終了処理が開始されると,新規のコネクション確立要求を受け付けなくなります。

なお,HADBサーバに接続中のAPまたは実行中のコマンドがある場合は,KFAA91152-Eメッセージが出力され,エラーとなります(HADBサーバを終了できません)。その場合は,マニュアルHADB メッセージを参照し,KFAA91152-Eメッセージの対策欄に従って対処してください。

2

adbstop --wait connection

adbstop --wait connectionコマンドを実行すると,次の処理を待ってから,HADBサーバを終了します。

  • HADBサーバに接続中のAPの,HADBサーバからの切り離し

  • 実行中のコマンドの終了

adbstop --wait connectionコマンドを実行する場面

次のような場合に,このコマンドを実行してください。

  • 実行中のコマンド(adbimportコマンドなど)が終了したらすぐに正常終了したい場合

  • HADBサーバに接続中のAPによる処理が完了し,APがHADBサーバから切り離されたら,すぐに正常終了したい場合

adbstop --wait connectionコマンド実行時の処理

adbstop --wait connectionコマンドの実行後,HADBサーバは終了待機状態となり,次の処理を待ちます(終了待機状態の待ち時間は,-tオプションで指定できます)。

  • HADBサーバに接続中のAPの,HADBサーバからの切り離し

  • 実行中のコマンドの終了

このとき,HADBサーバは新規のコネクション確立要求を受け付けなくなります(HADBサーバに接続中のAPまたは実行中のコマンドから発行される新規のトランザクション開始要求は受け付けます)。

HADBサーバに接続中のAPがすべて切り離され,かつ実行中のコマンドがすべて終了すると,HADBサーバの終了処理が開始されます。

3

adbstop --wait transaction

adbstop --wait transactionコマンドを実行すると,処理中のトランザクションの完了,および実行中のコマンドの終了を待ってから,HADBサーバが終了します。

adbstop --wait transactionコマンドを実行する場面

次のような場合に,このコマンドを実行してください。

  • 処理中のトランザクションが完了したらすぐに正常終了したい場合

  • 実行中のコマンド(adbimportコマンドなど)が終了したら,すぐに正常終了したい場合

  • APは接続中だが,トランザクションを開始していないときに正常終了したい場合

adbstop --wait transactionコマンド実行時の処理

adbstop --wait transactionコマンドの実行後,HADBサーバは終了待機状態となり,処理中のトランザクションの完了,および実行中のコマンドの終了を待ちます(終了待機状態の待ち時間は,-tオプションで指定できます)。

このとき,HADBサーバは新規のコネクション確立要求および新規のトランザクション開始要求を受け付けなくなります。

処理中のトランザクションがすべて完了し,かつ実行中のコマンドがすべて終了すると,HADBサーバに接続中のAPおよびコマンドがすべて切り離されて,HADBサーバの終了処理が開始されます。

4

adbstop --cancel

adbstop --cancelコマンドを実行すると,処理中のトランザクションおよび実行中のコマンドをキャンセルして,HADBサーバを終了します。

adbstop --cancelコマンドを実行する場面

処理をキャンセルしてすぐに正常終了したい場合などに,このコマンドを実行してください。

adbstop --cancelコマンド実行時の処理

adbstop --cancelコマンドの実行後,処理中のトランザクションおよび実行中のコマンドをキャンセルします。

このとき,HADBサーバは新規のコネクション確立要求および新規のトランザクション開始要求を受け付けなくなります。

処理中のトランザクションおよび実行中のコマンドがすべてキャンセルされると,HADBサーバに接続中のAPおよびコマンドがすべて強制的に切り離されて,HADBサーバの終了処理が開始されます。

終了待機状態とは

終了待機状態とは,HADBサーバが次の処理を待っている状態のことです。

  • HADBサーバに接続中のAPの,HADBサーバからの切り離し

  • 実行中のコマンドの終了

  • 処理中のトランザクションの完了

adbstop --wait connectionコマンドおよびadbstop --wait transactionコマンドを実行したときだけ,HADBサーバは終了待機状態になります。終了待機状態には待ち時間があり,adbstopコマンドの-tオプションで指定できます。-tオプションを省略した場合は,デフォルトの待ち時間が適用されます。

終了待機状態の待ち時間

終了待機状態の待ち時間内に,HADBサーバに接続中のAPがHADBサーバから切り離されなかったり,実行中のコマンドが終了しなかったり,処理中のトランザクションが完了しなかったりして,終了待機状態の待ち時間を超えた(タイムアウトした)場合は,HADBサーバは終了しません。この場合は,KFAA91152-Eメッセージが出力されるため,メッセージを参照して,エラー要因を取り除いてください。

なお,終了待機状態の待ち時間を超えた(タイムアウトした)場合,HADBサーバは,新規のコネクション確立要求および新規のトランザクション開始要求を受け付けられるようになります。

終了待機状態の確認方法

HADBサーバが終了待機状態かどうかは,adbls -d srvコマンドで確認できます。出力項目「STATUS」の表示が"STOPWAIT"であれば,HADBサーバは終了待機状態となっています。

終了待機状態をキャンセルしたい場合は,OSのkillコマンドでadbstopコマンドのプロセスを終了させてください。終了待機状態をキャンセルできます。

終了待機状態がキャンセルされた場合,HADBサーバは,新規のコネクション確立要求および新規のトランザクション開始要求を受け付けられるようになります。

adbls -d srvコマンドについては,マニュアルHADB コマンドリファレンスadbls -d srv(HADBサーバの状態表示)を参照してください。

(3) 終了処理完了の確認

HADBサーバの終了処理の完了を確認する場合,adbstopコマンドのリターンコードを確認してください。