ClickHouse / ClickHouse/clickhouse-java
Progress Header Support
- 主要言語
- Java
- スター
- 1.6k
- フォーク
- 636
- 平均マージ
- 2日 23時間
- マージ済み PR(30日)
- 29
説明
### 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.
コントリビューションガイド
調査の方向性
queryAll と queryRecords で使用される HTTP/1 レスポンスパーサーの設定から始め、Http1Config と DefaultHttpResponseParserFactory を含めて、httpclient5/httpcore5 のアップグレード動作を確認します。X-ClickHouse-Progress ヘッダーを繰り返し含む長いクエリを再現します。ヘッダー数の上限で失敗するのではなく、レスポンスが正常に解析されれば完了です。
索引モデルが issue の本文から書いたものです。
評価
- 技術スタック
- java
- 領域
- api
- issue の種類
- バグ
- 難易度
- 3/5
- 見積もり時間
- 1〜2日
- 活発さ
- 活発
- 明瞭さ
- おおむね明確
- 初心者へのやさしさ
- 55/100