ClickHouse / ClickHouse/clickhouse-rs
Support QBit data type (25.10)
- Dominant language
- Rust
- Stars
- 559
- Forks
- 172
- Avg merge
- 1d 19h
- Merged PRs (30d)
- 3
Description
Website docs: https://clickhouse.com/docs/sql-reference/data-types/qbit
Internal layout: https://github.com/ClickHouse/ClickHouse/pull/87922/files#diff-9d45fe76d9e7f9a392db684d3465aff14979cfc9bbe5ccd912e9307a934bd28aR15-R51
Given `QBit(element_type, dimension)` where `element_type` is one of `BFloat16`, `Float32`, `Float64`, it is internally represented as a `Tuple` of `FixedString(dimension)`.
- The length of the `Tuple` depends on the `element_type`
- `BFloat16` = **16**
- `Float32` = **32**
- `Float64` = **64**
- Requires **`allow_experimental_qbit_type`** setting
Contributor guide
Research direction
Start with the QBit documentation and the referenced ClickHouse PR layout, then inspect how clickhouse-rs maps ClickHouse data types. Compare existing type-support tests and determine how the three element types, dimension-dependent tuple length, and allow_experimental_qbit_type requirement should be represented; done means QBit values are supported with coverage for these cases.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- rust
- Domain
- databases
- Issue type
- Feature
- Difficulty
- 3/5
- Estimated time
- 1-2 days
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 45/100