Dale McDiarmid
Dale McDiarmid
We already use ch-go for encoding and decoding. There are other places we can potentially utilize it - specifically proto calls such as handshakes.
We aren't expecting to release v3 soon, but this issue will record changes (potentially breaking) we want to make and/or new features for addition. - [ ] Make clickhouse.Options a...
Currently, we ensure time.Time{} are assigned the timezone of a DateTime column at retrieval time - if this is specified in column definition e.g. `DateTime('Asia/Shanghai')`. In the absence of this...
Currently, we support lz4 only at a block level for both HTTP and native. ClickHouse supports more than this, specifically: For native: - [x] zstd - this is supported in...
HTTP can currently only be used over the standard interface. Implement support over native.
Currently the http approach reads the[ entire body](https://github.com/ClickHouse/clickhouse-go/blob/v2/conn_http_query.go#L45) before decoding the blocks. We should ideally do this in a streaming fashion to reduce memory. @ortyomka
Useful for debugging and some use cases e.g. https://github.com/grafana/clickhouse-datasource/issues/148 All responses would be marshalled into a map or struct.
Current parameter substitution in `bind.go` isn't robust and a source of pain. Ideally, we would move to ClickHouse and pass the parameters with the query. Depends on https://github.com/ClickHouse/ClickHouse/issues/38235
When passing basic auth headers the client calls: `b64encode(b(basic_auth)).decode('utf-8')` via the urllib3 request package. Here `b` is defined as ``` def b(s): return s.encode("latin-1") ``` This causes any non latin-1...