типа lambda(tuple(x), x+1) превращает в x -> x+1 ?
вы про clickhouse-client? нет если я правильно помню, он парсит запрос на клиенте и делает его rewrite и только потом отсылает его на сервер используйте другой клиент, например https://github.com/hatarist/clickhouse-cli
даже если в HTTP API слать оно DDL реврайтит
да? в смысле прямо в system.query_log пишет не то что запустили?
echo 'create table tstmv (a Array(Int), b Array(Int) MATERIALIZED arrayMap(lambda(tuple(x), x+1), a)) ENGINE=MergeTree() ORDER BY a[0];' | curl -vs localhost:8123 --data-binary @- SELECT create_table_query FROM system.tables WHERE name = 'tstmv' Query id: 5427931c-29a8-47ce-90bc-d34735a5b51b ┌─create_table_query────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────┐ │ CREATE TABLE default.tstmv (`a` Array(Int32), `b` Array(Int32) MATERIALIZED arrayMap(x -> (x + 1), a)) ENGINE = MergeTree ORDER BY a[0] SETTINGS index_granularity = 8192 │ └───────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────┘
а, сюда, да, в metadata/db/table.sql скорее всего попадает уже после rewrite на сервере. ну в общем это не отключается скорее всего =(
Обсуждают сегодня