Hitachi

OpenTP1 Version 7 分散トランザクション処理機能 OpenTP1 プログラム作成の手引


7.2.2 ユーザサーバの状態の取得

UAPから関数を呼び出して,クラスタ/並列システムを構成するOpenTP1ノードのユーザサーバの状態を取得できます。ユーザサーバの状態を取得することで,UAPでマルチノードエリア,またはマルチノードサブエリアのユーザサーバの状態を監視できます。

取得できる状態を次に示します。

ユーザサーバの状態を取得する場合,連続して取得する方法と,指定したユーザサーバの状態だけを取得する方法があります。

〈この項の構成〉

(1) ユーザサーバの状態を連続して取得する方法

OpenTP1ノードのノード識別子単位に,そのノードにあるすべてのユーザサーバの状態を取得します。

連続して状態を取得する場合は,取得したいノード識別子を指定したdc_adm_get_sv_status_begin関数を呼び出します。この関数を呼び出すと,指定したOpenTP1ノードにあるユーザサーバの個数がリターンされます。次に,dc_adm_get_sv_status_next関数を呼び出して,ユーザサーバの状態を取得します。該当するユーザサーバがなくなるまでdc_adm_get_sv_status_next関数を呼び出してから,最後にdc_adm_get_sv_status_done関数を呼び出して状態の取得を終了します。

dc_adm_get_sv_status_begin関数を呼び出したあとで,もう一度 dc_adm_get_sv_status_begin関数を呼び出すこと(dc_adm_get_sv_status_begin関数のネスト)はできません。

ユーザサーバの状態を連続して取得する手順を次の図に示します。

図7‒3 ユーザサーバの状態を連続して取得する手順

[図データ]

(2) 指定したユーザサーバの状態を取得する方法

一つのユーザサーバの状態を取得する場合は,dc_adm_get_sv_status関数を呼び出します。この関数を呼び出すと,関数に設定したノード識別子のユーザサーバに関する状態を取得できます。