Добрый день.
Есть проект на Spring c двумя базами данных.
Подключение определяется следующим кодом
@Bean
@Primary
@ConfigurationProperties("spring.pg.datasource")
public DataSourceProperties firstDataSourceProperties() {
return new DataSourceProperties();
}
@Bean
@ConfigurationProperties("spring.ch.datasource")
public DataSourceProperties secondDataSourceProperties() {
return new DataSourceProperties();
}
@Bean(name = "PG")
@Primary
@ConfigurationProperties("spring.pg.datasource.configuration")
public DataSource firstDataSource() {
return firstDataSourceProperties()
.initializeDataSourceBuilder()
.type(HikariDataSource.class)
.build();
}
@Bean(name = "CH")
@ConfigurationProperties("spring.ch.datasource.configuration")
public DataSource secondDataSource() {
return secondDataSourceProperties()
.initializeDataSourceBuilder()
.type(HikariDataSource.class)
.build();
}
При использовании HikariDataSource вторая база данных при запросе выдает :
java.sql.SQLException: Read timed out
at com.github.housepower.jdbc.connect.PhysicalConnection.receiveResponse(PhysicalConnection.java:88) ~[clickhouse-native-jdbc-1.7-stable.jar:na]
at com.github.housepower.jdbc.connect.PhysicalConnection.receiveHello(PhysicalConnection.java:72) ~[clickhouse-native-jdbc-1.7-stable.jar:na]
at com.github.housepower.jdbc.ClickHouseConnection.serverInfo(ClickHouseConnection.java:180) ~[clickhouse-native-jdbc-1.7-stable.jar:na]
at com.github.housepower.jdbc.ClickHouseConnection.createPhysicalInfo(ClickHouseConnection.java:164) ~[clickhouse-native-jdbc-1.7-stable.jar:na]
При этом если изменить для проблемной базы данных класс DataSource на BasicDataSource, конструкция начинает работать.
Как можно решить данную проблему? На что можно посмотреть ?