【发布时间】:2013-07-14 20:27:37
【问题描述】:
当 Datastax Java Cassandra 驱动程序尝试连接到您的集群时,您如何告知它超时?
我对主机可访问但 Cassandra 端口被阻塞或 Cassandra 守护程序未运行的情况特别感兴趣。我正在编写一个命令行客户端,如果它无法在合理的时间内连接,它应该退出并报告合适的错误消息。目前看来,如果接触点可达,驱动程序将永远等待接触点的响应。
也就是说,如果驱动程序在给定的最长时间内无法与任何接触点的 Cassandra 守护程序通信,我希望 Cluster.build() 抛出 NoHostAvailableException。
- 创建我自己的
RetryPolicy不起作用:这是为了重试查询,我希望在我们准备好运行查询之前应用超时。 - 创建我自己的
ReconnectinoPolicy最初看起来很有希望,但接口的合同没有提供任何方法来表明“认为这个节点永远死了”
【问题讨论】:
标签: java cassandra datastax-java-driver