1 つの DC に 2 つの C* 2.0.2 ノード (cassandra.yaml のデフォルト構成) と RF=2 のキースペースがあります。2 つのクライアントが Datastax Java Driver 1.0.3 を使用してこの DC に接続されています。クライアントは、エラーなしで CL=ONE を指定して C* との間でデータを読み書きします。しかし、1 つのノードをシャットダウンすると、両方のクライアントで大量の例外が発生します。
com.datastax.driver.core.exceptions.NoHostAvailableException:
All host(s) tried for query failed (no host was tried)
その一連の例外の後、クライアントはまだ生きている別のノードで正常に動作し続けます。一度に少なくとも 1 つのアクティブなノードがあり、CL=ONE が使用されているため、NoHostAvailableException を受信しないようにするにはどうすればよいですか?
更新: 2 つのノードのいずれかをシャットダウンすると、アプリ ログに次の例外が表示されることがあります。
[Reconnection-1] [ERROR] [Control connection] Cannot connect to
any host, scheduling retry
1 つのノードだけをシャットダウンすると、両方のノードが使用できないのはなぜですか? 2 つ目は現時点でまだ生きていて、cqlsh で接続できます。