ClickHouse / ClickHouse/clickhouse-java
[jdbc-v2, client-v2] MAX_NUM_OF_CONNECTIONS doesn't limit connection.
- Ngôn ngữ chính
- Java
- Star
- 1.6k
- Fork
- 636
- Merge trung bình
- 2 ngày 23 giờ
- Pull request đã merge (30 ngày)
- 29
Mô tả
## Description
There was an issue https://github.com/ClickHouse/clickhouse-java/issues/1705
The problem still exists: https://github.com/ClickHouse/clickhouse-java/issues/1705#issuecomment-2898237536
> Hi @Paultagoras, I have taken some new tests - I tried to re-run both my old tests and the project @f1llon provided - with clickhouse-jdbc version 0.8.6 and using JDBC-v2 classes (for example DataSourceImpl instead of the old ClickHouseDataSource).
On one hand, I don't see anymore the Hikari CP issue I first submitted, so many thanks! But on the other hand, I still have some issues:
> running @f1llon 's test project, I still have the old logs "route allocated: 1 of N; total allocated: 1 of N"
using the "default" connection pool and running my own tests of concurrent reading, property ClientConfigProperties.HTTP_MAX_OPEN_CONNECTIONS is ignored: when I run a netstat command on my PC, the number of connections opened toward ClickHouse can be well above the one I set with the ClientConfigProperties.HTTP_MAX_OPEN_CONNECTIONS property.
> Is it enough to initialize my DataSourceImpl with
baseProperties.setProperty(ClientConfigProperties.HTTP_MAX_OPEN_CONNECTIONS.getKey(), "5");
and then use
datasource.getConnection()
to make this configuration effective or do I need to do anything else?
> Still, thank you for your help!
### Steps to reproduce
1.
2.
3.
### Error Log or Exception StackTrace
```
```
### Expected Behaviour
### Code Example
```java
```
### Configuration
#### Client Configuration
```java
```
#### Environment
* [ ] Cloud
* Client version:
* Language version:
* OS:
#### ClickHouse Server
* ClickHouse Server version:
* ClickHouse Server non-default settings, if any:
* `CREATE TABLE` statements for tables involved:
* Sample data for all these tables, use [clickhouse-obfuscator](https://github.com/ClickHouse/ClickHouse/blob/master/programs/obfuscator/Obfuscator.cpp#L42-L80) if necessary
Hướng dẫn đóng góp
Hướng nghiên cứu
Bắt đầu từ DataSourceImpl và theo dõi cách ClientConfigProperties.HTTP_MAX_OPEN_CONNECTIONS được sử dụng khi datasource.getConnection() được gọi. Tái hiện kịch bản đọc đồng thời và kiểm tra hành vi phân bổ kết nối. Công việc được hoàn tất khi giới hạn tối đa đã cấu hình được thực thi và được bao phủ bằng một regression test tập trung.
Do mô hình lập chỉ mục viết ra từ nội dung của issue.
Đánh giá
- Công nghệ
- java
- Lĩnh vực
- database
- Loại issue
- Lỗi
- Độ khó
- 4/5
- Thời gian dự kiến
- 3-5 ngày
- Mức độ hoạt động
- Đình trệ
- Độ rõ ràng
- Cần làm rõ
- Mức phù hợp với người mới
- 25/100