最近开始使用SpringDataCassandra,其中一个节点作为接触点(不是本地机器)。因此,我必须给出正确的(默认)数据中心名称为“ datacenter1
“使其按照datastax的java驱动程序4.x工作。到目前为止没有问题;
在将另一个节点添加到联系点(多个节点)时,如下面的bean示例所示,它开始抛出警告,指出数据中心名称不同;
[s0 | default]您指定datacenter1作为本地dc,但某些接触点来自不同的dc:node(endpoint=:9042,hostid=null,hashcode=657776a7)=null;请提供正确的本地dc,或检查您的联系点
[s1 | default]您指定datacenter1作为本地dc,但某些接触点来自不同的dc:node(endpoint=:9042,hostid=null,hashcode=19e8b806)=null;请提供正确的本地dc,或检查您的联系点
bean配置示例:
@Bean
public CqlSessionFactoryBean caassSesssionFactory(){
CqlSessionFactoryBean bean = new CqlSessionFactoryBean();
bean.setContactPoints("<Node1 IP>, <Node2 IP>"); // Comma separated IP's
bean.setKeyspaceName("mykeyspace");
bean.setPort(9042);
bean.setSchemaAction(SchemaAction.NONE);
bean.setLocalDatacenter("datacenter1"); // both nodes having same data-center name
return bean;
}
在检查警告消息时,数据中心名称似乎为空。但事实并非如此。两个节点都有默认名称;
信息:使用datastax java驱动核心版本4.6.1
有人能告诉我哪里做错了吗?
注意:如果我尝试用同一个“datacenter1”与单个ip一起使用,那么这两个节点都可以正常工作。仅在添加多个接触点时出现警告;
任何帮助都将不胜感激。提前感谢:)
暂无答案!
目前还没有任何答案,快来回答吧!