3

将 cassandra 的 java 驱动程序从 3.7 升级到 4.0(或更高版本)后 - 我无法解析集群名称。

我需要我的应用程序使用 java 驱动程序连接到的 cassandra 集群的名称。早些时候,它以“Cluster.getMetadata().getClusterName()”的形式提供。但升级到 datastax-driver-core-4.0 或更高版本后,我无法从 CqlSession.getMetadata() 解析集群名称。

这非常重要,因为我已经根据不同的集群进行了隔离操作。

4

1 回答 1

6

我相信 java api 不再提供集群名称。相反,只需从 system.local 查询它:

SimpleStatement statement =SimpleStatement.newInstance("SELECT cluster_name FROM system.local");
ResultSet resultSet = session.execute(statement);
Row row = resultSet.one();
System.out.println(row.getString("cluster_name"));
于 2019-08-28T19:00:15.603 回答