ClickHouse / ClickHouse/clickhouse-java

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

Aperta
#3,120 0 commenti 0 reazioni 0 assegnatari Vedi su GitHub
Lingua principale
Java
Stelle
1.6k
Fork
636
Merge medio
2g 23h
PR unite (30g)
29

Descrizione

### 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

Guida per i contributori

Apri la guida per i contributori

Direzione di ricerca

Inizia individuando il percorso di decompressione delle risposte HTTP del client e la gestione dei parametri di query `compress` e `decompress`. Verifica come vengono attualmente decodificati i payload del server, quindi fai in modo che il completamento significhi che i payload identificati tramite magic number ZSTD o LZ4 possano essere letti quando la compressione HTTP è abilitata; aggiungi o aggiorna i test per entrambi gli algoritmi.

Scritto dal modello di indicizzazione a partire dal testo della issue.

Valutazione

Stack tecnologico
java
Ambito
databases
Tipo di issue
Funzionalità
Difficoltà
4/5
Tempo stimato
3-5 giorni
Stato di attività
Attiva
Chiarezza
Abbastanza chiara
Idoneità per principianti
50/100

Ricevi le nuove issue nella tua casella

Un breve riepilogo di issue GitHub adatte ai principianti.