ClickHouse / ClickHouse/clickhouse-java
[client-v2, jdbc-v2] Client should detect server compression and use proper decompression algorithm
- Lenguaje dominante
- Java
- Estrellas
- 1.6k
- Forks
- 637
- Merge medio
- 2 d 23 h
- PR fusionados (30 d)
- 29
Descripción
### 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
Guía de contribución
Línea de trabajo
Comienza localizando la ruta de descompresión de respuestas HTTP del cliente y el manejo de los parámetros de consulta `compress` y `decompress`. Verifica cómo se decodifican actualmente los payloads del servidor y, después, haz que la finalización implique que los payloads identificados mediante números mágicos de ZSTD o LZ4 puedan leerse cuando la compresión HTTP esté habilitada; añade o actualiza las pruebas para ambos algoritmos.
Escrito por el modelo de indexación a partir del texto del issue.
Evaluación
- Stack tecnológico
- java
- Área
- databases
- Tipo de issue
- Nueva funcionalidad
- Dificultad
- 4/5
- Tiempo estimado
- 3-5 días
- Estado de actividad
- Activo
- Claridad
- Bastante claro
- Aptitud para principiantes
- 50/100