ClickHouse / ClickHouse/clickhouse-java

Progress Header Support

Đang mở
#3,080 0 bình luận 0 reaction 0 người được giao Xem trên GitHub
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

Support multiple `X-ClickHouse-Progress` for tracking progress.

**Note**:
Bumping httpclient5 to 5.6.4 also pulls httpcore5 5.4.3, which defaults incoming HTTP/1 messages to 100 headers and an 8192-byte line length (https://github.com/advisories/GHSA-hf6x-8p5f-cgmf). Both HTTP stacks build Http1Config with only a buffer size and pass DefaultHttpResponseParserFactory.INSTANCE, so those new limits apply. ClickHouse send_progress_in_http_headers can emit a new X-ClickHouse-Progress header every http_headers_progress_interval_ms (default 100ms), and queryAll/queryRecords force wait_end_of_query, so a long query can exceed 100 headers and fail at parse time instead of returning a result or server error.

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ừ cấu hình bộ phân tích response HTTP/1 được queryAll và queryRecords sử dụng, bao gồm Http1Config và DefaultHttpResponseParserFactory, đồng thời xem xét hành vi nâng cấp của httpclient5/httpcore5. Tái hiện một truy vấn dài với các header X-ClickHouse-Progress lặp lại; hoàn tất khi response được phân tích thành công thay vì thất bại do giới hạn header.

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
api
Loại issue
Lỗi
Độ khó
3/5
Thời gian dự kiến
1-2 ngày
Mức độ hoạt động
Sôi nổi
Độ rõ ràng
Khá rõ ràng
Mức phù hợp với người mới
55/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.