Hitachi

インメモリデータグリッド Hitachi Elastic Application Data Store ユーザーズガイド


18.1.5 CacheExceptionクラス

〈この項の構成〉

(1) 説明

Cacheクラス,およびCacheManagerクラスに対する操作が失敗した場合に返却される例外クラスです。

getErrorCode()によってエラーコードを取得し,エラーの内容を判別します。

(2) 継承関係

java.lang.Object
└java.lang.Throwable
    └java.lang.Exception
        └com.hitachi.software.xeads.client.api.CacheException

(3) 形式

public class CacheException
extends Exception

(4) メソッド一覧

CacheExceptionクラスが提供するメソッド一覧を次の表に示します。

メソッド名

説明

getErrorCode()

発生した例外のエラーコードを取得します。

(5) getErrorCode()

(a) 機能

発生した例外のエラーコードを取得します。

(b) 形式

public int getErrorCode()

(c) 戻り値

戻り値としてエラーコードが返却されます。エラーコードとエラーの内容,発生要因を次の表に示します。

エラーコード

エラーコード定数

例外クラス

エラーの内容

発生要因

データを更新するAPIの処理状態

クライアント定義のeads.client.compatパラメタに0300を指定した場合のエラーコード

1000

EAD_ERROR_UNEXPECTED

CacheException

予期しないエラーが発生しました。

プログラム内で予期しないエラーが発生しました。

1000

1010

EAD_ERROR_INVALID_PARAMETER

UserOperationException

指定されたパラメタが不正です。

APIの引数に不正なパラメタを指定しています。

×

1010

1030

EAD_ERROR_CLIENT_FINALIZED

UserOperationException

EADSクライアントの使用を終了しているため,処理を実行できませんでした。

CacheManagerクラスのdestroy()を実行したあとで,CacheManagerクラスのメソッドが実行されました。

×

1030

1040

EAD_ERROR_CACHE_NOT_STARTED

UserOperationException

キャッシュが開始されていないため実行できません。

次の要因が考えられます。

  • キャッシュの終了後(CacheManagerクラスのremoveCache()の実行後)に,データを操作した。

  • EADSクライアントの使用を終了したあと(CacheManagerクラスのdestroy()実行後)に,データを操作した。

×

1040

1050

EAD_ERROR_NOT_SERIALIZABLE

UserOperationException

EADSクライアントでのシリアライズ処理に失敗しました。

APIの引数にシリアライズできないオブジェクトを指定しています。

×

1050

1060

EAD_ERROR_NOT_DESERIALIZABLE

UserOperationException

EADSクライアントでのデシリアライズ処理に失敗しました。

EADSサーバから取得したオブジェクトはEADSクライアントでデシリアライズできませんでした。

EADSクライアントのクラスパスに含まれないオブジェクトであることが考えられます。

1060

1100

EAD_ERROR_CACHE_NOT_NEED_STOP

UserOperationException

すでに終了しているキャッシュに対して,終了処理をしています。

次の要因が考えられます。

  • キャッシュの終了後(CacheManagerクラスのremoveCache()の実行後)に,キャッシュを終了した。

  • CacheManagerクラスのgetCache()を実行していない状態で,CacheManagerクラスのremoveCache()を実行した。

1100

1110

EAD_ERROR_INVALID_NODE_ADDRESS

UserOperationException

指定したEADSサーバのアドレス情報が,EADSクライアントが保持するEADSサーバのアドレス情報と一致しません。

APIの引数に指定したEADSサーバのアドレス情報(IPアドレスおよびポート番号)が,EADSクライアントが保持するどのEADSサーバのアドレス情報とも一致しません。

1110

1120

EAD_ERROR_EXCEED_MAX_CONNECTION_POOL_SIZE

UserOperationException

同一接続先に対してプールしておくコネクションがすでに最大個数に達していて,すべて使用中です。

特定のEADSサーバに対して同時にリクエストしているスレッド数が,コネクションの最大個数を超えています。

×

1120

1200

EAD_ERROR_EVENTLISTENER_NOT_INITIALIZED

UserOperationException

クラスタイベントリスナとノードイベントリスナを追加できません。

イベントリスナが無効になっている状態(クライアント定義のeads.client.eventListener.enableパラメタにtrueが指定されていない)で,次の処理を実行しました。

  • クラスタイベントリスナの追加(CacheManagerクラスのaddClusterEventListener()の実行)

  • ノードイベントリスナの追加(CacheManagerクラスのaddNodeEventListener()の実行)

1210

EAD_ERROR_EVENTLISTENER_EXIST

UserOperationException

すでに追加されているクラスタイベントリスナまたはノードイベントリスナを,追加しようとしました。

次の要因が考えられます。

  • クラスタイベントリスナの追加後(CacheManagerクラスのaddClusterEventListener()の実行後)に,クラスタイベントリスナの追加をした。

  • ノードイベントリスナの追加後(CacheManagerクラスのaddNodeEventListener()の実行後)に,ノードイベントリスナの追加をした。

1220

EAD_ERROR_EVENTLISTENER_NOT_NEED_REMOVE

UserOperationException

削除する必要がないクラスタイベントリスナまたはノードイベントリスナを,削除しようとしました。

次の要因が考えられます。

  • CacheManagerクラスのdestroy()の実行後に,イベントリスナの削除をした。

  • クラスタイベントリスナの削除後(CacheManagerクラスのremoveClusterEventListener()の実行後)に,クラスタイベントリスナの削除をした。

  • ノードイベントリスナの削除後(CacheManagerクラスのremoveNodeEventListener()の実行後)に,ノードイベントリスナの削除をした。

  • クラスタイベントリスナの追加(CacheManagerクラスのaddClusterEventListener()の実行)をしていない状態で,クラスタイベントリスナの削除(CacheManagerクラスのremoveClusterEventListener()の実行)をした。

  • ノードイベントリスナの追加(CacheManagerクラスのaddNodeEventListener()の実行)をしていない状態で,ノードイベントリスナの削除(CacheManagerクラスのremoveNodeEventListener()の実行)をした。

2000

EAD_ERROR_INIT

InitializeException

EADSクライアントの初期設定でエラーが発生しました。

CacheManagerクラスのcreate()実行中に予期しないエラーが発生しました。

2000

2010

EAD_ERROR_INIT_PROPERTIES

InitializeException

クライアント定義ファイルが読み込めませんでした。

次の要因が考えられます。

  • クライアント定義ファイルが存在しない。

  • クライアント定義ファイルに読み込み権限がない。

  • 格納先パス名がファイルではなくディレクトリを指している。

  • CacheManagerクラスのcreate()で指定した入力ストリームに問題がある。

2010

2020

EAD_ERROR_INIT_INVALID_PROPERTY

InitializeException

クライアント定義ファイルの定義内容に不正があります。

クライアント定義ファイルの定義内容が不正です。

2020

2030

EAD_ERROR_INIT_LOGGER

InitializeException

ログの初期化に失敗しました。

次の要因が考えられます。

  • 指定されたディレクトリ,または出力先のログファイルに書き込み権限がない。

  • 指定されたディレクトリに同名のファイルが存在する。

  • 指定されたパス名,またはファイル名が不正である。

  • ログファイル名と同名のディレクトリが存在した。

  • ログ出力を開始するためのメモリが不足している。

2030

2040

EAD_ERROR_INIT_CLUSTERINFO

InitializeException

クライアント定義ファイルで指定されたEADSサーバへの接続に失敗しました。

次の要因が考えられます。

  • クライアント定義に指定した接続先EADSサーバの指定に誤りがある。

  • 接続先EADSサーバとの通信に失敗した。または接続先EADSサーバで障害が発生している。

  • 接続先EADSサーバの最大同時接続数を超えた。

  • 接続先EADSサーバがリクエストの受付を開始できる状態でない。

  • 接続先EADSサーバでノンブロッキングI/O通信バッファが不足した。

  • 接続先EADSサーバとの通信中にタイムアウトが発生した。

2040

3000

EAD_ERROR_NET

ServerCommunicationException

EADSサーバとの間で通信エラーが発生しました。

次の要因が考えられます。

  • 通信中にネットワーク障害が発生した。

  • 通信先のEADSサーバで問題が発生した。

  • 通信先のホストで問題が発生した。

3000

3001

EAD_ERROR_NET_SEND_REQUEST

ServerCommunicationException

EADSサーバへのリクエスト送信処理で通信エラーが発生しました。

次の要因が考えられます。

  • 通信中にネットワーク障害が発生した。

  • 通信先のEADSサーバで問題が発生した。

  • 通信先のホストで問題が発生した。

3000

3002

EAD_ERROR_NET_RECEIVE_RESPONSE

ServerCommunicationException

EADSサーバへのレスポンス受信処理で通信エラーが発生しました。

次の要因が考えられます。

  • 通信中にネットワーク障害が発生した。

  • 通信先のEADSサーバで問題が発生した。

  • 通信先のホストで問題が発生した。

3000

3010

EAD_ERROR_NET_TIMEOUT

ServerCommunicationException

EADSサーバとの通信中にタイムアウトが発生しました。

次の要因が考えられます。

  • 接続先EADSサーバで問題が発生した。

  • 接続先のホストで問題が発生した。

  • ネットワークで問題が発生した。

  • タイムアウト時間の設定が誤っている。

3010

3011

EAD_ERROR_NET_SEND_TIMEOUT

ServerCommunicationException

EADSサーバへのリクエスト送信処理でタイムアウトが発生しました。

次の要因が考えられます。

  • 接続先EADSサーバで問題が発生した。

  • 接続先のホストで問題が発生した。

  • ネットワークで問題が発生した。

  • タイムアウト時間の設定が誤っている。

3010

3012

EAD_ERROR_NET_RECEIVE_TIMEOUT

ServerCommunicationException

EADSサーバへのレスポンス受信処理でタイムアウトが発生しました。

次の要因が考えられます。

  • 接続先EADSサーバで問題が発生した。

  • 接続先のホストで問題が発生した。

  • ネットワークで問題が発生した。

  • タイムアウト時間の設定が誤っている。

3010

3020

EAD_ERROR_NET_CONNECTION

ServerCommunicationException

EADSサーバとの接続に失敗しました。

次の要因が考えられます。

  • 接続先EADSサーバで問題が発生した。

  • 接続先EADSサーバに関する設定が誤っている。

  • ネットワークで問題が発生した。

  • タイムアウト時間の設定が誤っている。

×

3020

3030

EAD_ERROR_NET_PROTOCOL

ServerCommunicationException

EADSサーバとの通信中にプロトコル障害が発生しました。

接続先EADSサーバが誤りです。

3030

3040

EAD_ERROR_NET_CLUSTERINFO

ServerCommunicationException

接続できる,すべてのEADSサーバへの接続に失敗しました。

次の要因が考えられます。

  • 接続先EADSサーバで問題が発生した。

  • 接続先EADSサーバに関する設定が誤っている。

  • ネットワークで問題が発生した。

  • 指定したキャッシュが接続先EADSサーバに存在しない。

  • 接続先EADSサーバが閉塞状態となっている。

  • EADSクライアントが保持するクラスタ構成情報と,再起動した接続先EADSサーバが保持するクラスタ構成情報が一致しない。

  • 接続先EADSサーバの最大同時接続数を超えた。

  • EADSがサポートしていないJDK(例:OracleのJDK 1.7)を使用している。

  • 接続先EADSサーバとの通信中にタイムアウトが発生した。

3040

4000

EAD_ERROR_SERVER

InternalServerException

予期しない内部エラーがEADSサーバで発生しました。

予期しない問題が接続先EADSサーバで発生しました。

4000

4010

EAD_ERROR_SERVER_UNSUPPORTED_REQUEST

InternalServerException

EADSクライアントが送信したリクエストを,接続先EADSサーバが処理できませんでした。

次の要因が考えられます。

  • データが破損しているなどの理由で,接続先EADSサーバがリクエストを処理できない。

  • 接続先EADSサーバがサポートしていないAPIを使用した。

×

4010

4030

EAD_ERROR_SERVER_UNAVAILABLE

InternalServerException

EADSサーバが一時的に利用できません。

接続先EADSサーバの最大同時接続数を超えました。

×

4030

4040

EAD_ERROR_SERVER_INCOMPATIBLE_CLUSTERINFO

InternalServerException

接続先EADSサーバが保持するクラスタ構成情報と,EADSクライアントが保持するクラスタ構成情報に互換性がありません。

再起動した接続先EADSサーバのクラスタ構成情報が,EADSクライアントが保持するクラスタ構成情報と一致しません。

×

4040

4060

EAD_ERROR_SERVER_REPLACE_METHOD_NOT_MATCHED

InternalServerException

replace()実行時,すでに格納されているvalueがcomparativeValueと一致しなかったため,valueを格納できませんでした。

Cacheクラスのreplace()で条件に指定したvalueとキャッシュ上のvalueが一致しませんでした。

×

4060

4070

EAD_ERROR_SERVER_REPLACE_METHOD_KEY_NOT_EXIST

InternalServerException

replace()実行時,指定したkeyが存在しなかったため(keyに関連づけられたvalueが存在しなかったため),valueを格納できませんでした。

Cacheクラスのreplace()で指定したkeyに関連づけられたvalueが存在しなかったため,valueの比較ができませんでした。

×

4070

4080

EAD_ERROR_SERVER_CREATE_METHOD_KEY_EXIST

InternalServerException

create()実行時,すでに格納されているkeyが存在したため,valueを格納できませんでした。

Cacheクラスのcreate()で指定したkeyに関連づけられたvalueがすでに格納されています。

×

4080

4090

EAD_ERROR_SERVER_UPDATE_METHOD_KEY_NOT_EXIST

InternalServerException

update()実行時,格納されているkeyが存在しなかったため,valueを格納できませんでした。

Cacheクラスのupdate()で指定したkeyに関連づけられたvalueが格納されていません。

×

4090

4100

EAD_ERROR_SERVER_NOT_RUNNING

InternalServerException

リクエストを処理できるEADSサーバがありません。

次の要因が考えられます。

  • EADSクライアントからのリクエストを処理するEADSサーバと,データのコピー先EADSサーバがすべて縮退状態または停止状態になっている。

  • クラスタが稼働していない状態になっている。

×

4100

4110

EAD_ERROR_SERVER_STATUS

InternalServerException

EADSサーバの状態が,リクエストを実行できる状態ではありません。

接続先EADSサーバの状態がリクエストを実行できる状態でないため,リクエストを処理できませんでした。

×

4000

4120

EAD_ERROR_SERVER_NOT_EXECUTE_REQUEST_TEMPORARILY

InternalServerException

EADSサーバは,一時的にリクエストを実行できません。

スケールアウト処理中のため,受付済みのリクエストを一時的に処理できませんでした。スケールアウト処理が完了するまで待機しないでエラーとなる設定になっています。そのため,スケールアウト処理が完了したあとに,リクエストを再実行してください。

×

4000

4200

EAD_ERROR_SERVER_CACHE

InternalServerException

キャッシュに対する操作を実行できませんでした。

接続先EADSサーバで何らかの問題が発生しているため,キャッシュを操作できない状態になっています。操作を中止してEADSサーバの状態を確認してください。

×

4000

4210

EAD_ERROR_SERVER_CACHE_NOT_FOUND

InternalServerException

指定したキャッシュが存在しないため,キャッシュに対する操作を実行できませんでした。

指定したキャッシュが存在しないため,キャッシュを操作できませんでした。指定したキャッシュに対する操作を中止して,EADSサーバの状態を確認してください。

×

4000

4230

EAD_ERROR_SERVER_CACHE_CLUSTER_UPDATE

InternalServerException

リクエスト処理中にクラスタ構成変更が発生したため,キャッシュに対する操作を実行できませんでした。

リクエスト処理中にクラスタ構成変更が発生したため,キャッシュを操作できませんでした。クラスタ構成の変更が完了したあとに,キャッシュに対する操作を再度実行してください。

×

4000

4300

EAD_ERROR_SERVER_CACHE_BEFORE_REPLICATION

InternalServerException

キャッシュに対する操作中に内部エラーが発生しましたが,データの多重化は発生しませんでした。

接続先EADSサーバでキャッシュに対する操作中,内部エラーが発生しました。データの多重化は発生していないため,ほかの正常なEADSサーバへの影響はありません。EADSサーバが縮退したあと,正常なEADSサーバに接続先が変更されると,同じ操作から処理を再開できます。

×

4000

4310

EAD_ERROR_SERVER_CACHE_AFTER_REPLICATION

InternalServerException

キャッシュに対する操作中にEADSサーバで内部エラーが発生し,データ更新処理が失敗しました。

キャッシュに対する操作中,接続先EADSサーバで内部エラーが発生しました。データの多重化はすでに実行されているため,問題が発生した接続先EADSサーバが縮退したあとに正常なサーバに接続先が変更されると,データが更新された状態から操作を再開できます。

4000

4400

EAD_ERROR_SERVER_LIMIT_RECEIVE_BUFFER

InternalServerException

EADSサーバのリクエスト受信処理でノンブロッキングI/O通信バッファが不足しました。

接続先EADSサーバのリクエスト受信処理でノンブロッキングI/O通信バッファが不足しているため,リクエストを処理できませんでした。

×

4000

4410

EAD_ERROR_SERVER_LIMIT_SEND_BUFFER

InternalServerException

EADSサーバのレスポンス送信処理でノンブロッキングI/O通信バッファが不足しました。

接続先EADSサーバのレスポンス送信処理でノンブロッキングI/O通信バッファが不足しているため,レスポンスを送信できませんでした。

4000

4700

EAD_ERROR_SERVER_FUNCTION_EXECUTE

InternalServerException

EADSサーバのユーザファンクション内でエラーが発生しました。

接続先EADSサーバのユーザファンクション内でエラーが発生しました。ユーザファンクション内の処理を確認してください。

4000

4710

EAD_ERROR_SERVER_FUNCTION_RETURN_SERIALIZE

InternalServerException

EADSサーバでユーザファンクションの戻り値のシリアライズに失敗しました。

接続先EADSサーバで実行したユーザファンクションの戻り値に,シリアライズできないオブジェクトを指定しています。

4000

4720

EAD_ERROR_SERVER_FUNCTION_ARG_DESERIALIZE

InternalServerException

ユーザファンクションの引数に,EADSサーバがデシリアライズできないオブジェクトを指定しています。

ユーザファンクションの引数に,接続先EADSサーバがデシリアライズできないオブジェクトを指定しています。

4100

4730

EAD_ERROR_SERVER_FUNCTION_NOT_FOUND

InternalServerException

指定したユーザファンクション名のユーザファンクションが,EADSサーバに存在しません。

指定したユーザファンクション名のユーザファンクションが,接続先EADSサーバに存在しません。

4000

4800

EAD_ERROR_SERVER_LIMIT_EXTERNAL_MEMORY

InternalServerException

データを格納するメモリの容量が不足しています。

接続先EADSサーバでデータを格納するメモリ(Explicitヒープ)の容量が不足しているため,リクエストを処理できませんでした。

×

4000

4810

EAD_ERROR_SERVER_LIMIT_CACHE_FILE

InternalServerException

データを格納するキャッシュファイルの容量が不足しています。

接続先EADSサーバでデータを格納するキャッシュファイルの容量が不足しているため,リクエストを処理できませんでした。

×

4000

4820

EAD_ERROR_SERVER_LIMIT_KV_COUNT

InternalServerException

EADSサーバに格納できるkeyの数が上限に達しています。

接続先EADSサーバに格納できるkeyの数が上限に達しているため,リクエストを処理できませんでした。

×

4000

4830

EAD_ERROR_SERVER_LIMIT_KEY_VALUE_LENGTH

InternalServerException

指定したkey,グループ名,またはvalueのサイズがクラスタに格納できる最大サイズを超えています。

指定したkey,グループ名,またはvalueのサイズがクラスタに格納できる最大サイズを超えているため,リクエストを処理できませんでした。

×

4000

4840

EAD_ERROR_SERVER_LIMIT_EXTERNAL_MEMORY_TEMPORARILY

InternalServerException

接続先EADSサーバで,データを格納するメモリの容量が一時的に不足しています。

リバランス処理中は,EADSサーバでデータを格納するメモリ(Explicitヒープ)の容量が一時的に減少します。そのため,接続先EADSサーバでリクエストを処理できませんでした。

×

4000

4850

EAD_ERROR_SERVER_LIMIT_KV_COUNT_TEMPORARILY

InternalServerException

接続先EADSサーバで,格納できるkeyの数が一時的に上限に達しています。

リバランス処理中は,EADSサーバに格納できるkeyの数の上限が一時的に減少します。そのため,接続先EADSサーバでリクエストを処理できませんでした。

×

4000

4999

EAD_ERROR_SERVER_UNKNOWN

InternalServerException

解析できない内部エラーがEADSサーバで発生しました。

接続先EADSサーバで内部エラーが発生しましたが,接続先EADSサーバのバージョンがEADSクライアントライブラリのバージョンより新しいため,解析できませんでした。

4000

5000

EAD_ERROR_CLIENT

InternalClientException

EADSクライアントで内部エラーが発生しました。

クライアントライブラリ内で予期しないエラーが発生しました。

5000

5010

EAD_ERROR_CLIENT_OUT_OF_MEMORY

InternalClientException

EADSクライアント内でメモリ確保に失敗しました。

クライアントライブラリ内でメモリ確保に失敗しました。

5010

5020

EAD_ERROR_CLIENT_BATCH_CANCEL

InternalClientException

一括操作の実行をキャンセルしました。

一括操作を継続できないため,未実行の操作をキャンセルしました。

×

5020

6000

EAD_ERROR_BATCH_FAILED_ALL

BatchOperationException

一括操作のすべての操作に失敗しました。

データを一括で操作するAPIで実行しようとした操作は,すべて失敗しました。

6000

6010

EAD_ERROR_BATCH_FAILED_PART

BatchOperationException

一括操作の一部の操作に失敗しました。

データを一括で操作するAPIで実行しようとした操作のうち,一部が失敗しました。

6010

注※

put(),remove()などのデータを更新するAPIの実行時にエラーコードが出力された場合に,データが更新されているかどうかを表しています。

記号の意味を次に示します。

△:データが更新されているかどうかは不明です。処理が完了したかどうか,確認してください。

×:データは更新されていません。

−:put(),remove()などのデータを更新するAPIの実行時に,このエラーコードは出力されません。