ClickHouse / ClickHouse/clickhouse-java

[jdbc-v2, client-v2] MAX_NUM_OF_CONNECTIONS doesn't limit connection.

Đang mở
#2,379 0 bình luận 0 reaction 0 người được giao Xem trên GitHub
area:network bug client-api-v2 jdbc-v2
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

Mở 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

Nhận issue mới trong hộp thư của bạn

Bản tóm tắt ngắn những issue GitHub phù hợp với người mới.