20.6.5.2. レスポンスヘッダー
以下の新しいレスポンス操作コードが追加されました。
- 0x22 = auth mech list response
- 0x24 = auth mech response
- 0x26 = クライアントリモートイベントリスナー応答の追加
- 0x28 = クライアントリモートイベントリスナーの応答の削除
- 0x2A = size response
クライアントによりインテリジェントな決定を可能にするために、新しいエラーコードが 2 つ追加されました。特に、フェイルオーバーロジックは次の通りです。
- 0x87 = Node mayed.クライアントが応答としてこのエラーを受信すると、応答したノードが 3 番目のノードに操作を送信するという問題があったことを意味します。通常、このエラーを返す要求は他のノードにフェイルオーバーする必要があります。
- 0x88 = Illegal lifecycle state。クライアントがこのエラーを応答として受け取ると、サーバー側のキャッシュまたはキャッシュマネージャーが停止または同様の状況のいずれかが停止しているため、要求で利用できないことを意味します。通常、このエラーを返す要求は他のノードにフェイルオーバーする必要があります。
以下のコマンドの応答に対して調整が行われ、送信される情報を追跡する必要なしに応答のデコードをより適切に処理できるようになりました。より正確には、以前の値を解析する方法が変更され、コマンドの応答のステータスは以前の値に従うかどうかについて包含します。具体的には、以下のようになります。
-
成功すると、以前の値の後に応答が
0x03ステータスコードを返します。 -
PutIfAbsent 応答は、キーが存在し、応答に値が続くため、putIfAbsent 操作が失敗した場合にのみ
0x04ステータスコードを返します。putIfAbsent が機能した場合、以前の値はなかったため、追加で何も返されません。 -
応答を置き換えるのは、置き換えが発生した場合にのみ
0x03ステータスコードを返し、応答の前の値または置き換えられた値が続きます。置き換えが行われなかった場合は、キャッシュエントリーが存在しないため、返すことができる以前の値はありません。 -
ReplaceIfUnmodified は、変更が発生した場合にのみ
0x03ステータスコードを返し、応答の前の値または置き換えられた値に従います。 -
ReplaceIfUnmodified は、キーが変更された場合に置き換えられなかった場合に限り
0x04ステータスコードを返し、変更後の値は応答で続きます。 -
削除の発生時に
0x03ステータスコードが返され、応答の前または削除された値が続きます。キーが存在しないために削除が発生しなかった場合、以前の値情報を送信する意味はありません。 -
RemoveIfUnmodified は、削除が発生したときにのみ
0x03ステータスコードを返し、応答の前の値または置き換えられた値に従います。 -
RemoveIfUnmodified は、キーの変更が原因で削除が行われなかった場合のみ
0x04ステータスコードを返し、変更値は応答で続きます。