If you're a ClickHouse expert, we'd love your help reviewing our ClickHouse driver.
What this driver does
The ClickHouse driver (backends/clickhouse/) is a standalone backend implementation using the official clickhouse-go/v2 driver.
It implements the Driver interface:
- Exec — splits multi-statement SQL with
pgsplit and executes each statement
- Query — runs a query, allocates generic scan targets from column types, and counts rows
- Insert — bulk inserts using ClickHouse's
PrepareBatch API (append rows, then send)
- Update — delegates to
Insert (relies on ReplacingMergeTree for deduplication)
- CaptureConfig — captures
version() and key settings from system.settings (max_threads, max_memory_usage, max_block_size, max_insert_threads)
Connection pool: MaxOpenConns=20, MaxIdleConns=5, 30m lifetime. Pings on connect.
If you're a ClickHouse expert, we'd love your help reviewing our ClickHouse driver.
What this driver does
The ClickHouse driver (
backends/clickhouse/) is a standalone backend implementation using the officialclickhouse-go/v2driver.It implements the
Driverinterface:pgsplitand executes each statementPrepareBatchAPI (append rows, then send)Insert(relies onReplacingMergeTreefor deduplication)version()and key settings fromsystem.settings(max_threads,max_memory_usage,max_block_size,max_insert_threads)Connection pool:
MaxOpenConns=20,MaxIdleConns=5, 30m lifetime. Pings on connect.