ClickHouse / ClickHouse/clickhouse-java

[client-v2, jdbc-v2] Client should detect server compression and use proper decompression algorithm

Offen
#3,120 0 Kommentare 0 Reaktionen 0 zugewiesene Personen Auf GitHub ansehen
Vorherrschende Sprache
Java
Sterne
1.6k
Forks
636
Ø Merge
2 T. 23 Std.
Gemergte PRs (30 T.)
29

Beschreibung

### Description

There is a change in upcoming ClickHouse version https://github.com/ClickHouse/ClickHouse/pull/108786
which switches to ZSTD(3) for disk and network.

In case of HTTP this is compression requested by `compress` query parameter (`decompress` is sent by client to indicate that payload is compressed).

What should be done
- ZSTD compression library is added or existing used
- when client reads payload it should detect magic number of ZSTD and LZ4 sent by server
- if http compression and `compress=1` is enabled it should be possible to read payload from server

Beitragsleitfaden

Beitragsleitfaden öffnen

Rechercherichtung

Beginne damit, den Client-Pfad zur Dekomprimierung von HTTP-Antworten und die Verarbeitung der Abfrageparameter `compress` und `decompress` zu lokalisieren. Überprüfe, wie Payloads vom Server derzeit dekodiert werden, und sorge dann dafür, dass die Fertigstellung bedeutet, dass Payloads, die anhand von ZSTD- oder LZ4-Magic-Numbers identifiziert wurden, bei aktivierter HTTP-Kompression gelesen werden können; füge Tests für beide Algorithmen hinzu oder aktualisiere sie.

Vom Indexierungsmodell aus dem Issue-Text verfasst.

Bewertung

Tech-Stack
java
Bereich
databases
Issue-Typ
Feature
Schwierigkeit
4/5
Geschätzter Aufwand
3-5 Tage
Aktivitätsstatus
Aktiv
Klarheit
Größtenteils klar
Anfängerfreundlichkeit
50/100

Neue Issues direkt in Ihr Postfach

Eine kurze Übersicht über anfängerfreundliche GitHub-Issues.