14.3.10 getposition(データの格納先の表示)
- 〈この項の構成〉
(1) 機能
指定したkeyまたはグループの,格納先EADSサーバを表示します。
(2) 規則
-
このサブコマンドは,クラスタが次の状態のときに実行できます。
-
クラスタ稼働中(AVAILABLE)
-
クラスタ一部稼働中(PARTIALLY_AVAILABLE)
-
-
このサブコマンドは,EADSサーバが次の状態のときに実行できます。
-
初期化中(initializing)
-
初期化状態(initialized)
-
稼働状態(running)
-
閉塞中(closing)
-
閉塞状態(closed)
-
縮退状態(isolated)
-
停止中(stopping)
-
-
-lオプションまたは--localオプションを指定した場合は,クラスタおよびEADSサーバの状態に関係なく実行できます。
-
クラスタに追加するEADSサーバがクラスタにまだ参加していない場合,そのEADSサーバでは実行できません。
(3) 形式
eztool getposition <keyまたはグループ名> [-l] [--format <フォーマット名>] [--columns <列名>[,<列名>]…] [--filter <フィルタの条件>] [--match <一致条件>]
(4) オプションおよび引数
(a) <keyまたはグループ名>
格納先EADSサーバを表示したいデータに関連づけられたkey,またはグループ名を指定します。
指定できるデータについては,「15.2.2(1) keyとして指定できるデータ」,または「15.2.2(2) グループ名として指定できるデータ」を参照してください。
(b) -lまたは--local
クラスタ定義で設定したクラスタ構成で,指定したkeyまたはグループが格納されるEADSサーバを知りたい場合に指定します。
このオプションを指定すると,コマンドを実行するEADSサーバのクラスタ定義ファイルの内容を読み込みます。
次の場合は,エラーとなります。
-
コマンドを実行するEADSサーバにクラスタ定義ファイルが存在しない場合
-
クラスタ定義のeads.node.<EADSサーバID>.addressパラメタおよびeads.node.<EADSサーバID>.portパラメタが定義されていない場合
- 注意事項
-
稼働中のクラスタ構成情報で,指定したkeyまたはグループが格納されるEADSサーバを知りたい場合は,このオプションを指定しないで実行してください。
なお,このオプションを指定しない場合,ダウンしているEADSサーバの情報は表示されません。表示されるEADSサーバ数とReplicationCount(データの多重度)を比較することで,データのコピー状況を確認します。
(c) --format <フォーマット名>
このオプションの詳細については,「14.4.2 表示形式の指定方法」を参照してください。
(d) --columns <列名>[,<列名>]…
このオプションの詳細については,「14.4.3 列のフィルタリングの指定方法」を参照してください。
(e) --filter <フィルタの条件>
このオプションの詳細については,「14.4.4 行のフィルタリングの指定方法」を参照してください。
(f) --match <一致条件>
このオプションの詳細については,「14.4.5 条件一致の指定方法」を参照してください。
(5) 出力例
eztool getpositionコマンドの実行結果の出力例を次に示します。
表示の構成要素については,「14.4.1 表示内容の構成要素」を参照してください。
サマリとメインの表示内容を,それぞれ次の表に示します。
項番 |
サマリ名 |
説明 |
---|---|---|
1 |
ReplicationCount |
データの多重度 |
2 |
HashValue |
指定されたkeyまたはグループ名のハッシュ値 |
項番 |
列名 |
説明 |
---|---|---|
1 |
No. |
データの優先度※ 昇順で表示されます。 |
2 |
IP_Address |
EADSサーバのIPアドレス |
3 |
ClientPort |
EADSクライアントとの通信に使用するEADSサーバのポート番号 |
4 |
Position |
EADSサーバの位置(ハッシュ値) |
- 注※
-
データを多重化している場合,データの格納先EADSサーバ,データのコピー先EADSサーバの順に表示されます。
この例の場合,No.1に表示されているEADSサーバがデータの格納先,No.2以降に表示されているEADSサーバが,データのコピー先となります。
(6) リターンコード
次の表に示すリターンコードが返却されます。
項番 |
リターンコード |
リターンコードの説明 |
|
---|---|---|---|
コマンド定義のeads.command.compatパラメタを指定していない場合 |
コマンド定義のeads.command.compatパラメタに0300を指定した場合 |
||
1 |
0 |
0 |
コマンドの実行に成功しました。 |
2 |
101 |
101 |
コマンドの初期化に失敗しました。 |
3 |
110 |
接続に失敗しました。 |
|
4 |
111 |
通信タイムアウトで失敗しました。 |
|
5 |
120 |
構文不正で失敗しました。 |
|
6 |
130 |
コマンドを実行できない状態のため失敗しました。 |
|
7 |
150 |
コマンド実行中に失敗しました。 |
|
8 |
200 |
コマンドタイムアウトで失敗しました。 |
- --matchオプションを指定した場合
-
条件に一致した場合は0,一致しなかった場合は1を,リターンコードとして返します。ただし,コマンドの実行に失敗したときは,--matchオプションを指定しなかった場合と同じになります。
(7) 注意事項
-
出力処理中にコマンドがタイムアウトした場合,出力結果が欠落することがあります。また,出力処理が完了していても,コマンドがタイムアウトになることがあります。このような場合には,コマンドのタイムアウト時間を大きくしてから再実行してください。
-
すべてのEADSサーバが縮退状態(isolated)の場合はエラーとなります。