Я пытаюсь подключиться к 2 различным кластерам кассандры с использованием весенних данных кассандры. Но он всегда использует только первый конфиг кластера Кассандры. Второй не влияет. Есть идеи, что я делаю не так? Это конфиг, который я использую:
Первая конфигурация кластера Кассандры:
@Configuration
@EnableCassandraRepositories(
basePackageClasses = SourceRepository.class
)
public class SourceCassandraConfig extends AbstractCassandraConfiguration {
@Override
public String getContactPoints() {
return "localhost";
}
@Override
public int getPort() {
return "9051";
}
@Override
protected String getKeyspaceName() {
return "source_keyspace";
}
}
Конфигурация второго кластера Кассандры:
@Configuration
@EnableCassandraRepositories(
basePackageClasses = TargetRepository.class,
cassandraTemplateRef = "targetCassandraTemplate"
)
public class TargetCassandraConfig extends AbstractCassandraConfiguration {
@Override
public String getContactPoints() {
return "localhost";
}
@Override
public int getPort() {
return "9052";
}
@Override
protected String getKeyspaceName() {
return "target_keyspace";
}
@Override
@Bean("targetSession")
public CassandraSessionFactoryBean session() throws ClassNotFoundException {
final CassandraSessionFactoryBean session = super.session();
session.setKeyspaceName(getKeyspaceName());
session.setCluster(cluster().getObject());
return session;
}
@Override
public CassandraCqlClusterFactoryBean cluster() {
CassandraCqlClusterFactoryBean cluster = super.cluster();
cluster.setContactPoints(contactPoints);
cluster.setPort(port);
return cluster;
}
@Bean("targetCassandraTemplate")
public CassandraAdminOperations cassandraTemplate(
@Qualifier("targetSession") final CassandraSessionFactoryBean session) throws Exception {
return new CassandraAdminTemplate(session.getObject(), cassandraConverter());
}
}
Я всегда вижу, что добавляется только первый узел кластера
com.datastax.driver.core.Cluster : New Cassandra host localhost/127.0.0.1:9051 added
Что я делаю не так?