{"msg":"started clickhouse","v":0,"name":"test_database_usage","level":30,"time":"2026-05-06T22:27:44.170303384Z","hostname":"w-01KQZN477ZS1BC6HY2V5Y8CPA2","pid":18344,"address":"[::1]:65074"} {"msg":"task starting, creating Oximeter client","v":0,"name":"test_database_usage","level":20,"time":"2026-05-06T22:27:44.170611279Z","hostname":"w-01KQZN477ZS1BC6HY2V5Y8CPA2","pid":18344,"component":"retention-task","component":"ServerContext"} {"msg":"registered USDT probes","v":0,"name":"test_database_usage","level":20,"time":"2026-05-06T22:27:44.172341115Z","hostname":"w-01KQZN477ZS1BC6HY2V5Y8CPA2","pid":18344,"id":"5309d1f2-e456-475d-9cce-6a4c92d00524","component":"clickhouse-client","component":"retention-task","component":"ServerContext"} {"msg":"created client, starting recv loop","v":0,"name":"test_database_usage","level":20,"time":"2026-05-06T22:27:44.172395592Z","hostname":"w-01KQZN477ZS1BC6HY2V5Y8CPA2","pid":18344,"component":"retention-task","component":"ServerContext"} {"msg":"registered USDT probes","v":0,"name":"test_database_usage","level":20,"time":"2026-05-06T22:27:44.172408752Z","hostname":"w-01KQZN477ZS1BC6HY2V5Y8CPA2","pid":18344,"id":"7ff2f1bd-3cca-4070-a141-79964d52f6f6","component":"clickhouse-client","component":"usage-task","component":"ServerContext"} {"msg":"starting database table usage computation","v":0,"name":"test_database_usage","level":20,"time":"2026-05-06T22:27:44.173297348Z","hostname":"w-01KQZN477ZS1BC6HY2V5Y8CPA2","pid":18344,"component":"usage-task","component":"ServerContext"} {"msg":"executing SQL query","v":0,"name":"test_database_usage","level":10,"time":"2026-05-06T22:27:44.174962987Z","hostname":"w-01KQZN477ZS1BC6HY2V5Y8CPA2","pid":18344,"id":"7ff2f1bd-3cca-4070-a141-79964d52f6f6","component":"clickhouse-client","component":"usage-task","component":"ServerContext","sql":"SELECT concat(database, '.', name) AS table_name, ifNull(total_bytes, 0) AS total_bytes, ifNull(total_rows, 0) AS total_rows FROM system.tables WHERE has_own_data"} {"msg":"registered USDT probes","v":0,"name":"test_database_usage","level":20,"time":"2026-05-06T22:27:44.181781956Z","hostname":"w-01KQZN477ZS1BC6HY2V5Y8CPA2","pid":18344,"id":"4f6d4606-8aa1-451a-a8da-f537c4acc038","component":"clickhouse-client","component":"ServerContext"} {"msg":"executing SQL query","v":0,"name":"test_database_usage","level":10,"time":"2026-05-06T22:27:44.186739835Z","hostname":"w-01KQZN477ZS1BC6HY2V5Y8CPA2","pid":18344,"id":"4f6d4606-8aa1-451a-a8da-f537c4acc038","component":"clickhouse-client","component":"ServerContext","sql":"SELECT MAX(value) AS max_version FROM oximeter.version;"} {"msg":"finished database table usage computation","v":0,"name":"test_database_usage","level":20,"time":"2026-05-06T22:27:44.195164305Z","hostname":"w-01KQZN477ZS1BC6HY2V5Y8CPA2","pid":18344,"component":"usage-task","component":"ServerContext"} {"msg":"oximeter database does not exist, or is out-of-date","v":0,"name":"test_database_usage","level":40,"time":"2026-05-06T22:27:44.210301288Z","hostname":"w-01KQZN477ZS1BC6HY2V5Y8CPA2","pid":18344,"id":"4f6d4606-8aa1-451a-a8da-f537c4acc038","component":"clickhouse-client","component":"ServerContext"} {"msg":"initializing oximeter database to version 14","v":0,"name":"test_database_usage","level":30,"time":"2026-05-06T22:27:44.210382614Z","hostname":"w-01KQZN477ZS1BC6HY2V5Y8CPA2","pid":18344,"component":"ServerContext"} {"msg":"reading db version","v":0,"name":"test_database_usage","level":30,"time":"2026-05-06T22:27:44.210396384Z","hostname":"w-01KQZN477ZS1BC6HY2V5Y8CPA2","pid":18344,"id":"4f6d4606-8aa1-451a-a8da-f537c4acc038","component":"clickhouse-client","component":"ServerContext"} {"msg":"executing SQL query","v":0,"name":"test_database_usage","level":10,"time":"2026-05-06T22:27:44.210498639Z","hostname":"w-01KQZN477ZS1BC6HY2V5Y8CPA2","pid":18344,"id":"4f6d4606-8aa1-451a-a8da-f537c4acc038","component":"clickhouse-client","component":"ServerContext","sql":"SELECT MAX(value) AS max_version FROM oximeter.version;"} {"msg":"oximeter database does not exist, or is out-of-date","v":0,"name":"test_database_usage","level":40,"time":"2026-05-06T22:27:44.211940979Z","hostname":"w-01KQZN477ZS1BC6HY2V5Y8CPA2","pid":18344,"id":"4f6d4606-8aa1-451a-a8da-f537c4acc038","component":"clickhouse-client","component":"ServerContext"} {"msg":"read oximeter database version","v":0,"name":"test_database_usage","level":30,"time":"2026-05-06T22:27:44.212008585Z","hostname":"w-01KQZN477ZS1BC6HY2V5Y8CPA2","pid":18344,"id":"4f6d4606-8aa1-451a-a8da-f537c4acc038","component":"clickhouse-client","component":"ServerContext","version":0} {"msg":"initializing oximeter schema","v":0,"name":"test_database_usage","level":30,"time":"2026-05-06T22:27:44.212027014Z","hostname":"w-01KQZN477ZS1BC6HY2V5Y8CPA2","pid":18344,"id":"4f6d4606-8aa1-451a-a8da-f537c4acc038","component":"clickhouse-client","component":"ServerContext"} {"msg":"initializing ClickHouse database","v":0,"name":"test_database_usage","level":20,"time":"2026-05-06T22:27:44.212043734Z","hostname":"w-01KQZN477ZS1BC6HY2V5Y8CPA2","pid":18344,"id":"4f6d4606-8aa1-451a-a8da-f537c4acc038","component":"clickhouse-client","component":"ServerContext"} {"msg":"executing SQL query","v":0,"name":"test_database_usage","level":10,"time":"2026-05-06T22:27:44.212058443Z","hostname":"w-01KQZN477ZS1BC6HY2V5Y8CPA2","pid":18344,"id":"4f6d4606-8aa1-451a-a8da-f537c4acc038","component":"clickhouse-client","component":"ServerContext","sql":"CREATE DATABASE IF NOT EXISTS oximeter"} {"msg":"executing SQL query","v":0,"name":"test_database_usage","level":10,"time":"2026-05-06T22:27:44.213442506Z","hostname":"w-01KQZN477ZS1BC6HY2V5Y8CPA2","pid":18344,"id":"4f6d4606-8aa1-451a-a8da-f537c4acc038","component":"clickhouse-client","component":"ServerContext","sql":"\n\n/* The version table contains metadata about the `oximeter` database */\nCREATE TABLE IF NOT EXISTS oximeter.version\n(\n value UInt64,\n timestamp DateTime64(9, 'UTC')\n)\nENGINE = MergeTree()\nORDER BY (value, timestamp)"} {"msg":"executing SQL query","v":0,"name":"test_database_usage","level":10,"time":"2026-05-06T22:27:44.218478441Z","hostname":"w-01KQZN477ZS1BC6HY2V5Y8CPA2","pid":18344,"id":"4f6d4606-8aa1-451a-a8da-f537c4acc038","component":"clickhouse-client","component":"ServerContext","sql":"\n\n/* The measurement tables contain all individual samples from each timeseries.\n *\n * Each table stores a single datum type, and otherwise contains nearly the same\n * structure. The primary sorting key is on the timeseries name, key, and then\n * timestamp, so that all timeseries from the same schema are grouped, followed\n * by all samples from the same timeseries.\n *\n * This reflects that one usually looks up the _key_ in one or more field table,\n * and then uses that to index quickly into the measurements tables.\n */\nCREATE TABLE IF NOT EXISTS oximeter.measurements_bool\n(\n timeseries_name String,\n timeseries_key UInt64,\n timestamp DateTime64(9, 'UTC'),\n datum Nullable(Bool)\n)\nENGINE = MergeTree()\nORDER BY (timeseries_name, timeseries_key, timestamp)\nTTL toDateTime(timestamp) + INTERVAL 30 DAY"} {"msg":"executing SQL query","v":0,"name":"test_database_usage","level":10,"time":"2026-05-06T22:27:44.223451479Z","hostname":"w-01KQZN477ZS1BC6HY2V5Y8CPA2","pid":18344,"id":"4f6d4606-8aa1-451a-a8da-f537c4acc038","component":"clickhouse-client","component":"ServerContext","sql":"\n\nCREATE TABLE IF NOT EXISTS oximeter.measurements_i8\n(\n timeseries_name String,\n timeseries_key UInt64,\n timestamp DateTime64(9, 'UTC'),\n datum Nullable(Int8)\n)\nENGINE = MergeTree()\nORDER BY (timeseries_name, timeseries_key, timestamp)\nTTL toDateTime(timestamp) + INTERVAL 30 DAY"} {"msg":"executing SQL query","v":0,"name":"test_database_usage","level":10,"time":"2026-05-06T22:27:44.227301291Z","hostname":"w-01KQZN477ZS1BC6HY2V5Y8CPA2","pid":18344,"id":"4f6d4606-8aa1-451a-a8da-f537c4acc038","component":"clickhouse-client","component":"ServerContext","sql":"\n\nCREATE TABLE IF NOT EXISTS oximeter.measurements_u8\n(\n timeseries_name String,\n timeseries_key UInt64,\n timestamp DateTime64(9, 'UTC'),\n datum Nullable(UInt8)\n)\nENGINE = MergeTree()\nORDER BY (timeseries_name, timeseries_key, timestamp)\nTTL toDateTime(timestamp) + INTERVAL 30 DAY"} {"msg":"executing SQL query","v":0,"name":"test_database_usage","level":10,"time":"2026-05-06T22:27:44.230512135Z","hostname":"w-01KQZN477ZS1BC6HY2V5Y8CPA2","pid":18344,"id":"4f6d4606-8aa1-451a-a8da-f537c4acc038","component":"clickhouse-client","component":"ServerContext","sql":"\n\nCREATE TABLE IF NOT EXISTS oximeter.measurements_i16\n(\n timeseries_name String,\n timeseries_key UInt64,\n timestamp DateTime64(9, 'UTC'),\n datum Nullable(Int16)\n)\nENGINE = MergeTree()\nORDER BY (timeseries_name, timeseries_key, timestamp)\nTTL toDateTime(timestamp) + INTERVAL 30 DAY"} {"msg":"executing SQL query","v":0,"name":"test_database_usage","level":10,"time":"2026-05-06T22:27:44.238326885Z","hostname":"w-01KQZN477ZS1BC6HY2V5Y8CPA2","pid":18344,"id":"4f6d4606-8aa1-451a-a8da-f537c4acc038","component":"clickhouse-client","component":"ServerContext","sql":"\n\nCREATE TABLE IF NOT EXISTS oximeter.measurements_u16\n(\n timeseries_name String,\n timeseries_key UInt64,\n timestamp DateTime64(9, 'UTC'),\n datum Nullable(UInt16)\n)\nENGINE = MergeTree()\nORDER BY (timeseries_name, timeseries_key, timestamp)\nTTL toDateTime(timestamp) + INTERVAL 30 DAY"} {"msg":"executing SQL query","v":0,"name":"test_database_usage","level":10,"time":"2026-05-06T22:27:44.241616885Z","hostname":"w-01KQZN477ZS1BC6HY2V5Y8CPA2","pid":18344,"id":"4f6d4606-8aa1-451a-a8da-f537c4acc038","component":"clickhouse-client","component":"ServerContext","sql":"\n\nCREATE TABLE IF NOT EXISTS oximeter.measurements_i32\n(\n timeseries_name String,\n timeseries_key UInt64,\n timestamp DateTime64(9, 'UTC'),\n datum Nullable(Int32)\n)\nENGINE = MergeTree()\nORDER BY (timeseries_name, timeseries_key, timestamp)\nTTL toDateTime(timestamp) + INTERVAL 30 DAY"} {"msg":"executing SQL query","v":0,"name":"test_database_usage","level":10,"time":"2026-05-06T22:27:44.245279597Z","hostname":"w-01KQZN477ZS1BC6HY2V5Y8CPA2","pid":18344,"id":"4f6d4606-8aa1-451a-a8da-f537c4acc038","component":"clickhouse-client","component":"ServerContext","sql":"\n\nCREATE TABLE IF NOT EXISTS oximeter.measurements_u32\n(\n timeseries_name String,\n timeseries_key UInt64,\n timestamp DateTime64(9, 'UTC'),\n datum Nullable(UInt32)\n)\nENGINE = MergeTree()\nORDER BY (timeseries_name, timeseries_key, timestamp)\nTTL toDateTime(timestamp) + INTERVAL 30 DAY"} {"msg":"executing SQL query","v":0,"name":"test_database_usage","level":10,"time":"2026-05-06T22:27:44.251810409Z","hostname":"w-01KQZN477ZS1BC6HY2V5Y8CPA2","pid":18344,"id":"4f6d4606-8aa1-451a-a8da-f537c4acc038","component":"clickhouse-client","component":"ServerContext","sql":"\n\nCREATE TABLE IF NOT EXISTS oximeter.measurements_i64\n(\n timeseries_name String,\n timeseries_key UInt64,\n timestamp DateTime64(9, 'UTC'),\n datum Nullable(Int64)\n)\nENGINE = MergeTree()\nORDER BY (timeseries_name, timeseries_key, timestamp)\nTTL toDateTime(timestamp) + INTERVAL 30 DAY"} {"msg":"executing SQL query","v":0,"name":"test_database_usage","level":10,"time":"2026-05-06T22:27:44.25754387Z","hostname":"w-01KQZN477ZS1BC6HY2V5Y8CPA2","pid":18344,"id":"4f6d4606-8aa1-451a-a8da-f537c4acc038","component":"clickhouse-client","component":"ServerContext","sql":"\n\nCREATE TABLE IF NOT EXISTS oximeter.measurements_u64\n(\n timeseries_name String,\n timeseries_key UInt64,\n timestamp DateTime64(9, 'UTC'),\n datum Nullable(UInt64)\n)\nENGINE = MergeTree()\nORDER BY (timeseries_name, timeseries_key, timestamp)\nTTL toDateTime(timestamp) + INTERVAL 30 DAY"} {"msg":"executing SQL query","v":0,"name":"test_database_usage","level":10,"time":"2026-05-06T22:27:44.265061135Z","hostname":"w-01KQZN477ZS1BC6HY2V5Y8CPA2","pid":18344,"id":"4f6d4606-8aa1-451a-a8da-f537c4acc038","component":"clickhouse-client","component":"ServerContext","sql":"\n\nCREATE TABLE IF NOT EXISTS oximeter.measurements_f32\n(\n timeseries_name String,\n timeseries_key UInt64,\n timestamp DateTime64(9, 'UTC'),\n datum Nullable(Float32)\n)\nENGINE = MergeTree()\nORDER BY (timeseries_name, timeseries_key, timestamp)\nTTL toDateTime(timestamp) + INTERVAL 30 DAY"} {"msg":"executing SQL query","v":0,"name":"test_database_usage","level":10,"time":"2026-05-06T22:27:44.268019781Z","hostname":"w-01KQZN477ZS1BC6HY2V5Y8CPA2","pid":18344,"id":"4f6d4606-8aa1-451a-a8da-f537c4acc038","component":"clickhouse-client","component":"ServerContext","sql":"\n\nCREATE TABLE IF NOT EXISTS oximeter.measurements_f64\n(\n timeseries_name String,\n timeseries_key UInt64,\n timestamp DateTime64(9, 'UTC'),\n datum Nullable(Float64)\n)\nENGINE = MergeTree()\nORDER BY (timeseries_name, timeseries_key, timestamp)\nTTL toDateTime(timestamp) + INTERVAL 30 DAY"} {"msg":"executing SQL query","v":0,"name":"test_database_usage","level":10,"time":"2026-05-06T22:27:44.27359285Z","hostname":"w-01KQZN477ZS1BC6HY2V5Y8CPA2","pid":18344,"id":"4f6d4606-8aa1-451a-a8da-f537c4acc038","component":"clickhouse-client","component":"ServerContext","sql":"\n\nCREATE TABLE IF NOT EXISTS oximeter.measurements_string\n(\n timeseries_name String,\n timeseries_key UInt64,\n timestamp DateTime64(9, 'UTC'),\n datum Nullable(String)\n)\nENGINE = MergeTree()\nORDER BY (timeseries_name, timeseries_key, timestamp)\nTTL toDateTime(timestamp) + INTERVAL 30 DAY"} {"msg":"executing SQL query","v":0,"name":"test_database_usage","level":10,"time":"2026-05-06T22:27:44.279513861Z","hostname":"w-01KQZN477ZS1BC6HY2V5Y8CPA2","pid":18344,"id":"4f6d4606-8aa1-451a-a8da-f537c4acc038","component":"clickhouse-client","component":"ServerContext","sql":"\n\nCREATE TABLE IF NOT EXISTS oximeter.measurements_bytes\n(\n timeseries_name String,\n timeseries_key UInt64,\n timestamp DateTime64(9, 'UTC'),\n /*\n * NOTE: Right now we can't unambiguously record a nullable byte array.\n * Arrays cannot be nested in `Nullable()` types, and encoding the array as\n * a string isn't palatable for a few reasons.\n * See: https://github.com/oxidecomputer/omicron/issues/4551 for more\n * details.\n */\n datum Array(UInt8)\n)\nENGINE = MergeTree()\nORDER BY (timeseries_name, timeseries_key, timestamp)\nTTL toDateTime(timestamp) + INTERVAL 30 DAY"} {"msg":"executing SQL query","v":0,"name":"test_database_usage","level":10,"time":"2026-05-06T22:27:44.286365538Z","hostname":"w-01KQZN477ZS1BC6HY2V5Y8CPA2","pid":18344,"id":"4f6d4606-8aa1-451a-a8da-f537c4acc038","component":"clickhouse-client","component":"ServerContext","sql":"\n\nCREATE TABLE IF NOT EXISTS oximeter.measurements_cumulativei64\n(\n timeseries_name String,\n timeseries_key UInt64,\n start_time DateTime64(9, 'UTC'),\n timestamp DateTime64(9, 'UTC'),\n datum Nullable(Int64)\n)\nENGINE = MergeTree()\nORDER BY (timeseries_name, timeseries_key, start_time, timestamp)\nTTL toDateTime(timestamp) + INTERVAL 30 DAY"} {"msg":"executing SQL query","v":0,"name":"test_database_usage","level":10,"time":"2026-05-06T22:27:44.290382093Z","hostname":"w-01KQZN477ZS1BC6HY2V5Y8CPA2","pid":18344,"id":"4f6d4606-8aa1-451a-a8da-f537c4acc038","component":"clickhouse-client","component":"ServerContext","sql":"\n\nCREATE TABLE IF NOT EXISTS oximeter.measurements_cumulativeu64\n(\n timeseries_name String,\n timeseries_key UInt64,\n start_time DateTime64(9, 'UTC'),\n timestamp DateTime64(9, 'UTC'),\n datum Nullable(UInt64)\n)\nENGINE = MergeTree()\nORDER BY (timeseries_name, timeseries_key, start_time, timestamp)\nTTL toDateTime(timestamp) + INTERVAL 30 DAY"} {"msg":"executing SQL query","v":0,"name":"test_database_usage","level":10,"time":"2026-05-06T22:27:44.29537123Z","hostname":"w-01KQZN477ZS1BC6HY2V5Y8CPA2","pid":18344,"id":"4f6d4606-8aa1-451a-a8da-f537c4acc038","component":"clickhouse-client","component":"ServerContext","sql":"\n\nCREATE TABLE IF NOT EXISTS oximeter.measurements_cumulativef32\n(\n timeseries_name String,\n timeseries_key UInt64,\n start_time DateTime64(9, 'UTC'),\n timestamp DateTime64(9, 'UTC'),\n datum Nullable(Float32)\n)\nENGINE = MergeTree()\nORDER BY (timeseries_name, timeseries_key, start_time, timestamp)\nTTL toDateTime(timestamp) + INTERVAL 30 DAY"} {"msg":"executing SQL query","v":0,"name":"test_database_usage","level":10,"time":"2026-05-06T22:27:44.301454524Z","hostname":"w-01KQZN477ZS1BC6HY2V5Y8CPA2","pid":18344,"id":"4f6d4606-8aa1-451a-a8da-f537c4acc038","component":"clickhouse-client","component":"ServerContext","sql":"\n\n\nCREATE TABLE IF NOT EXISTS oximeter.measurements_cumulativef64\n(\n timeseries_name String,\n timeseries_key UInt64,\n start_time DateTime64(9, 'UTC'),\n timestamp DateTime64(9, 'UTC'),\n datum Nullable(Float64)\n)\nENGINE = MergeTree()\nORDER BY (timeseries_name, timeseries_key, start_time, timestamp)\nTTL toDateTime(timestamp) + INTERVAL 30 DAY"} {"msg":"executing SQL query","v":0,"name":"test_database_usage","level":10,"time":"2026-05-06T22:27:44.308517941Z","hostname":"w-01KQZN477ZS1BC6HY2V5Y8CPA2","pid":18344,"id":"4f6d4606-8aa1-451a-a8da-f537c4acc038","component":"clickhouse-client","component":"ServerContext","sql":"\n\nCREATE TABLE IF NOT EXISTS oximeter.measurements_histogrami8\n(\n timeseries_name String,\n timeseries_key UInt64,\n start_time DateTime64(9, 'UTC'),\n timestamp DateTime64(9, 'UTC'),\n /*\n * NOTE: Array types cannot be Nullable, see\n * https://clickhouse.com/docs/en/sql-reference/data-types/nullable\n * for more details.\n *\n * This means we need to use empty arrays to indicate a missing value. This\n * is unfortunate, and at this point relies on the fact that an\n * `oximeter::Histogram` cannot have zero bins. If that changes, we'll need\n * to figure out another way to represent missing samples here.\n */\n bins Array(Int8),\n counts Array(UInt64),\n min Int8,\n max Int8,\n sum_of_samples Int64,\n squared_mean Float64,\n p50_marker_heights Array(Float64),\n p50_marker_positions Array(UInt64),\n p50_desired_marker_positions Array(Float64),\n p90_marker_heights Array(Float64),\n p90_marker_positions Array(UInt64),\n p90_desired_marker_positions Array(Float64),\n p99_marker_heights Array(Float64),\n p99_marker_positions Array(UInt64),\n p99_desired_marker_positions Array(Float64)\n)\nENGINE = MergeTree()\nORDER BY (timeseries_name, timeseries_key, start_time, timestamp)\nTTL toDateTime(timestamp) + INTERVAL 30 DAY"} {"msg":"executing SQL query","v":0,"name":"test_database_usage","level":10,"time":"2026-05-06T22:27:44.314889141Z","hostname":"w-01KQZN477ZS1BC6HY2V5Y8CPA2","pid":18344,"id":"4f6d4606-8aa1-451a-a8da-f537c4acc038","component":"clickhouse-client","component":"ServerContext","sql":"\n\nCREATE TABLE IF NOT EXISTS oximeter.measurements_histogramu8\n(\n timeseries_name String,\n timeseries_key UInt64,\n start_time DateTime64(9, 'UTC'),\n timestamp DateTime64(9, 'UTC'),\n bins Array(UInt8),\n counts Array(UInt64),\n min UInt8,\n max UInt8,\n sum_of_samples Int64,\n squared_mean Float64,\n p50_marker_heights Array(Float64),\n p50_marker_positions Array(UInt64),\n p50_desired_marker_positions Array(Float64),\n p90_marker_heights Array(Float64),\n p90_marker_positions Array(UInt64),\n p90_desired_marker_positions Array(Float64),\n p99_marker_heights Array(Float64),\n p99_marker_positions Array(UInt64),\n p99_desired_marker_positions Array(Float64)\n)\nENGINE = MergeTree()\nORDER BY (timeseries_name, timeseries_key, start_time, timestamp)\nTTL toDateTime(timestamp) + INTERVAL 30 DAY"} {"msg":"executing SQL query","v":0,"name":"test_database_usage","level":10,"time":"2026-05-06T22:27:44.334347964Z","hostname":"w-01KQZN477ZS1BC6HY2V5Y8CPA2","pid":18344,"id":"4f6d4606-8aa1-451a-a8da-f537c4acc038","component":"clickhouse-client","component":"ServerContext","sql":"\n\nCREATE TABLE IF NOT EXISTS oximeter.measurements_histogrami16\n(\n timeseries_name String,\n timeseries_key UInt64,\n start_time DateTime64(9, 'UTC'),\n timestamp DateTime64(9, 'UTC'),\n bins Array(Int16),\n counts Array(UInt64),\n min Int16,\n max Int16,\n sum_of_samples Int64,\n squared_mean Float64,\n p50_marker_heights Array(Float64),\n p50_marker_positions Array(UInt64),\n p50_desired_marker_positions Array(Float64),\n p90_marker_heights Array(Float64),\n p90_marker_positions Array(UInt64),\n p90_desired_marker_positions Array(Float64),\n p99_marker_heights Array(Float64),\n p99_marker_positions Array(UInt64),\n p99_desired_marker_positions Array(Float64)\n)\nENGINE = MergeTree()\nORDER BY (timeseries_name, timeseries_key, start_time, timestamp)\nTTL toDateTime(timestamp) + INTERVAL 30 DAY"} {"msg":"executing SQL query","v":0,"name":"test_database_usage","level":10,"time":"2026-05-06T22:27:44.340499835Z","hostname":"w-01KQZN477ZS1BC6HY2V5Y8CPA2","pid":18344,"id":"4f6d4606-8aa1-451a-a8da-f537c4acc038","component":"clickhouse-client","component":"ServerContext","sql":"\n\nCREATE TABLE IF NOT EXISTS oximeter.measurements_histogramu16\n(\n timeseries_name String,\n timeseries_key UInt64,\n start_time DateTime64(9, 'UTC'),\n timestamp DateTime64(9, 'UTC'),\n bins Array(UInt16),\n counts Array(UInt64),\n min UInt16,\n max UInt16,\n sum_of_samples Int64,\n squared_mean Float64,\n p50_marker_heights Array(Float64),\n p50_marker_positions Array(UInt64),\n p50_desired_marker_positions Array(Float64),\n p90_marker_heights Array(Float64),\n p90_marker_positions Array(UInt64),\n p90_desired_marker_positions Array(Float64),\n p99_marker_heights Array(Float64),\n p99_marker_positions Array(UInt64),\n p99_desired_marker_positions Array(Float64)\n)\nENGINE = MergeTree()\nORDER BY (timeseries_name, timeseries_key, start_time, timestamp)\nTTL toDateTime(timestamp) + INTERVAL 30 DAY"} {"msg":"executing SQL query","v":0,"name":"test_database_usage","level":10,"time":"2026-05-06T22:27:44.344895591Z","hostname":"w-01KQZN477ZS1BC6HY2V5Y8CPA2","pid":18344,"id":"4f6d4606-8aa1-451a-a8da-f537c4acc038","component":"clickhouse-client","component":"ServerContext","sql":"\n\nCREATE TABLE IF NOT EXISTS oximeter.measurements_histogrami32\n(\n timeseries_name String,\n timeseries_key UInt64,\n start_time DateTime64(9, 'UTC'),\n timestamp DateTime64(9, 'UTC'),\n bins Array(Int32),\n counts Array(UInt64),\n min Int32,\n max Int32,\n sum_of_samples Int64,\n squared_mean Float64,\n p50_marker_heights Array(Float64),\n p50_marker_positions Array(UInt64),\n p50_desired_marker_positions Array(Float64),\n p90_marker_heights Array(Float64),\n p90_marker_positions Array(UInt64),\n p90_desired_marker_positions Array(Float64),\n p99_marker_heights Array(Float64),\n p99_marker_positions Array(UInt64),\n p99_desired_marker_positions Array(Float64)\n)\nENGINE = MergeTree()\nORDER BY (timeseries_name, timeseries_key, start_time, timestamp)\nTTL toDateTime(timestamp) + INTERVAL 30 DAY"} {"msg":"executing SQL query","v":0,"name":"test_database_usage","level":10,"time":"2026-05-06T22:27:44.351764917Z","hostname":"w-01KQZN477ZS1BC6HY2V5Y8CPA2","pid":18344,"id":"4f6d4606-8aa1-451a-a8da-f537c4acc038","component":"clickhouse-client","component":"ServerContext","sql":"\n\nCREATE TABLE IF NOT EXISTS oximeter.measurements_histogramu32\n(\n timeseries_name String,\n timeseries_key UInt64,\n start_time DateTime64(9, 'UTC'),\n timestamp DateTime64(9, 'UTC'),\n bins Array(UInt32),\n counts Array(UInt64),\n min UInt32,\n max UInt32,\n sum_of_samples Int64,\n squared_mean Float64,\n p50_marker_heights Array(Float64),\n p50_marker_positions Array(UInt64),\n p50_desired_marker_positions Array(Float64),\n p90_marker_heights Array(Float64),\n p90_marker_positions Array(UInt64),\n p90_desired_marker_positions Array(Float64),\n p99_marker_heights Array(Float64),\n p99_marker_positions Array(UInt64),\n p99_desired_marker_positions Array(Float64)\n)\nENGINE = MergeTree()\nORDER BY (timeseries_name, timeseries_key, start_time, timestamp)\nTTL toDateTime(timestamp) + INTERVAL 30 DAY"} {"msg":"executing SQL query","v":0,"name":"test_database_usage","level":10,"time":"2026-05-06T22:27:44.365152746Z","hostname":"w-01KQZN477ZS1BC6HY2V5Y8CPA2","pid":18344,"id":"4f6d4606-8aa1-451a-a8da-f537c4acc038","component":"clickhouse-client","component":"ServerContext","sql":"\n\nCREATE TABLE IF NOT EXISTS oximeter.measurements_histogrami64\n(\n timeseries_name String,\n timeseries_key UInt64,\n start_time DateTime64(9, 'UTC'),\n timestamp DateTime64(9, 'UTC'),\n bins Array(Int64),\n counts Array(UInt64),\n min Int64,\n max Int64,\n sum_of_samples Int64,\n squared_mean Float64,\n p50_marker_heights Array(Float64),\n p50_marker_positions Array(UInt64),\n p50_desired_marker_positions Array(Float64),\n p90_marker_heights Array(Float64),\n p90_marker_positions Array(UInt64),\n p90_desired_marker_positions Array(Float64),\n p99_marker_heights Array(Float64),\n p99_marker_positions Array(UInt64),\n p99_desired_marker_positions Array(Float64)\n)\nENGINE = MergeTree()\nORDER BY (timeseries_name, timeseries_key, start_time, timestamp)\nTTL toDateTime(timestamp) + INTERVAL 30 DAY"} {"msg":"executing SQL query","v":0,"name":"test_database_usage","level":10,"time":"2026-05-06T22:27:44.373572146Z","hostname":"w-01KQZN477ZS1BC6HY2V5Y8CPA2","pid":18344,"id":"4f6d4606-8aa1-451a-a8da-f537c4acc038","component":"clickhouse-client","component":"ServerContext","sql":"\n\nCREATE TABLE IF NOT EXISTS oximeter.measurements_histogramu64\n(\n timeseries_name String,\n timeseries_key UInt64,\n start_time DateTime64(9, 'UTC'),\n timestamp DateTime64(9, 'UTC'),\n bins Array(UInt64),\n counts Array(UInt64),\n min UInt64,\n max UInt64,\n sum_of_samples Int64,\n squared_mean Float64,\n p50_marker_heights Array(Float64),\n p50_marker_positions Array(UInt64),\n p50_desired_marker_positions Array(Float64),\n p90_marker_heights Array(Float64),\n p90_marker_positions Array(UInt64),\n p90_desired_marker_positions Array(Float64),\n p99_marker_heights Array(Float64),\n p99_marker_positions Array(UInt64),\n p99_desired_marker_positions Array(Float64)\n)\nENGINE = MergeTree()\nORDER BY (timeseries_name, timeseries_key, start_time, timestamp)\nTTL toDateTime(timestamp) + INTERVAL 30 DAY"} {"msg":"executing SQL query","v":0,"name":"test_database_usage","level":10,"time":"2026-05-06T22:27:44.38357051Z","hostname":"w-01KQZN477ZS1BC6HY2V5Y8CPA2","pid":18344,"id":"4f6d4606-8aa1-451a-a8da-f537c4acc038","component":"clickhouse-client","component":"ServerContext","sql":"\n\nCREATE TABLE IF NOT EXISTS oximeter.measurements_histogramf32\n(\n timeseries_name String,\n timeseries_key UInt64,\n start_time DateTime64(9, 'UTC'),\n timestamp DateTime64(9, 'UTC'),\n bins Array(Float32),\n counts Array(UInt64),\n min Float32,\n max Float32,\n sum_of_samples Float64,\n squared_mean Float64,\n p50_marker_heights Array(Float64),\n p50_marker_positions Array(UInt64),\n p50_desired_marker_positions Array(Float64),\n p90_marker_heights Array(Float64),\n p90_marker_positions Array(UInt64),\n p90_desired_marker_positions Array(Float64),\n p99_marker_heights Array(Float64),\n p99_marker_positions Array(UInt64),\n p99_desired_marker_positions Array(Float64)\n)\nENGINE = MergeTree()\nORDER BY (timeseries_name, timeseries_key, start_time, timestamp)\nTTL toDateTime(timestamp) + INTERVAL 30 DAY"} {"msg":"executing SQL query","v":0,"name":"test_database_usage","level":10,"time":"2026-05-06T22:27:44.389011415Z","hostname":"w-01KQZN477ZS1BC6HY2V5Y8CPA2","pid":18344,"id":"4f6d4606-8aa1-451a-a8da-f537c4acc038","component":"clickhouse-client","component":"ServerContext","sql":"\n\nCREATE TABLE IF NOT EXISTS oximeter.measurements_histogramf64\n(\n timeseries_name String,\n timeseries_key UInt64,\n start_time DateTime64(9, 'UTC'),\n timestamp DateTime64(9, 'UTC'),\n bins Array(Float64),\n counts Array(UInt64),\n min Float64,\n max Float64,\n sum_of_samples Float64,\n squared_mean Float64,\n p50_marker_heights Array(Float64),\n p50_marker_positions Array(UInt64),\n p50_desired_marker_positions Array(Float64),\n p90_marker_heights Array(Float64),\n p90_marker_positions Array(UInt64),\n p90_desired_marker_positions Array(Float64),\n p99_marker_heights Array(Float64),\n p99_marker_positions Array(UInt64),\n p99_desired_marker_positions Array(Float64)\n)\nENGINE = MergeTree()\nORDER BY (timeseries_name, timeseries_key, start_time, timestamp)\nTTL toDateTime(timestamp) + INTERVAL 30 DAY"} {"msg":"executing SQL query","v":0,"name":"test_database_usage","level":10,"time":"2026-05-06T22:27:44.402282099Z","hostname":"w-01KQZN477ZS1BC6HY2V5Y8CPA2","pid":18344,"id":"4f6d4606-8aa1-451a-a8da-f537c4acc038","component":"clickhouse-client","component":"ServerContext","sql":"\n\n/* The field tables store named dimensions of each timeseries.\n *\n * As with the measurement tables, there is one field table for each field data\n * type. Fields are deduplicated by using the \"replacing merge tree\", though\n * this behavior **must not** be relied upon for query correctness.\n *\n * The index for the fields differs from the measurements, however. Rows are\n * sorted by timeseries name, then field name, field value, and finally\n * timeseries key. This reflects the most common pattern for looking them up:\n * by field name and possibly value, within a timeseries. The resulting keys are\n * usually then used to look up measurements.\n *\n * NOTE: We may want to consider a secondary index on these tables, sorting by\n * timeseries name and then key, since it would improve lookups where one\n * already has the key. Realistically though, these tables are quite small and\n * so performance benefits will be low in absolute terms.\n *\n * TTL: We use a materialized column to expire old field table records. This\n * column is generated automatically by the database whenever a new row is\n * inserted. It cannot be inserted directly, nor is it returned in a `SELECT *`\n * query. Since these tables are `ReplacingMergeTree`s, that means the last\n * record will remain during a deduplication, which will have the last\n * timestamp. ClickHouse will then expire old data for us, similar to the\n * measurement tables.\n */\nCREATE TABLE IF NOT EXISTS oximeter.fields_bool\n(\n timeseries_name String,\n timeseries_key UInt64,\n field_name String,\n field_value Bool,\n last_updated_at DateTime MATERIALIZED now()\n)\nENGINE = ReplacingMergeTree()\nORDER BY (timeseries_name, field_name, field_value, timeseries_key)\nTTL last_updated_at + INTERVAL 30 DAY"} {"msg":"executing SQL query","v":0,"name":"test_database_usage","level":10,"time":"2026-05-06T22:27:44.405853316Z","hostname":"w-01KQZN477ZS1BC6HY2V5Y8CPA2","pid":18344,"id":"4f6d4606-8aa1-451a-a8da-f537c4acc038","component":"clickhouse-client","component":"ServerContext","sql":"\n\nCREATE TABLE IF NOT EXISTS oximeter.fields_i8\n(\n timeseries_name String,\n timeseries_key UInt64,\n field_name String,\n field_value Int8,\n last_updated_at DateTime MATERIALIZED now()\n)\nENGINE = ReplacingMergeTree()\nORDER BY (timeseries_name, field_name, field_value, timeseries_key)\nTTL last_updated_at + INTERVAL 30 DAY"} {"msg":"executing SQL query","v":0,"name":"test_database_usage","level":10,"time":"2026-05-06T22:27:44.408891338Z","hostname":"w-01KQZN477ZS1BC6HY2V5Y8CPA2","pid":18344,"id":"4f6d4606-8aa1-451a-a8da-f537c4acc038","component":"clickhouse-client","component":"ServerContext","sql":"\n\nCREATE TABLE IF NOT EXISTS oximeter.fields_u8\n(\n timeseries_name String,\n timeseries_key UInt64,\n field_name String,\n field_value UInt8,\n last_updated_at DateTime MATERIALIZED now()\n)\nENGINE = ReplacingMergeTree()\nORDER BY (timeseries_name, field_name, field_value, timeseries_key)\nTTL last_updated_at + INTERVAL 30 DAY"} {"msg":"executing SQL query","v":0,"name":"test_database_usage","level":10,"time":"2026-05-06T22:27:44.414766092Z","hostname":"w-01KQZN477ZS1BC6HY2V5Y8CPA2","pid":18344,"id":"4f6d4606-8aa1-451a-a8da-f537c4acc038","component":"clickhouse-client","component":"ServerContext","sql":"\n\nCREATE TABLE IF NOT EXISTS oximeter.fields_i16\n(\n timeseries_name String,\n timeseries_key UInt64,\n field_name String,\n field_value Int16,\n last_updated_at DateTime MATERIALIZED now()\n)\nENGINE = ReplacingMergeTree()\nORDER BY (timeseries_name, field_name, field_value, timeseries_key)\nTTL last_updated_at + INTERVAL 30 DAY"} {"msg":"executing SQL query","v":0,"name":"test_database_usage","level":10,"time":"2026-05-06T22:27:44.428693375Z","hostname":"w-01KQZN477ZS1BC6HY2V5Y8CPA2","pid":18344,"id":"4f6d4606-8aa1-451a-a8da-f537c4acc038","component":"clickhouse-client","component":"ServerContext","sql":"\n\nCREATE TABLE IF NOT EXISTS oximeter.fields_u16\n(\n timeseries_name String,\n timeseries_key UInt64,\n field_name String,\n field_value UInt16,\n last_updated_at DateTime MATERIALIZED now()\n)\nENGINE = ReplacingMergeTree()\nORDER BY (timeseries_name, field_name, field_value, timeseries_key)\nTTL last_updated_at + INTERVAL 30 DAY"} {"msg":"executing SQL query","v":0,"name":"test_database_usage","level":10,"time":"2026-05-06T22:27:44.432144017Z","hostname":"w-01KQZN477ZS1BC6HY2V5Y8CPA2","pid":18344,"id":"4f6d4606-8aa1-451a-a8da-f537c4acc038","component":"clickhouse-client","component":"ServerContext","sql":"\n\nCREATE TABLE IF NOT EXISTS oximeter.fields_i32\n(\n timeseries_name String,\n timeseries_key UInt64,\n field_name String,\n field_value Int32,\n last_updated_at DateTime MATERIALIZED now()\n)\nENGINE = ReplacingMergeTree()\nORDER BY (timeseries_name, field_name, field_value, timeseries_key)\nTTL last_updated_at + INTERVAL 30 DAY"} {"msg":"executing SQL query","v":0,"name":"test_database_usage","level":10,"time":"2026-05-06T22:27:44.436019288Z","hostname":"w-01KQZN477ZS1BC6HY2V5Y8CPA2","pid":18344,"id":"4f6d4606-8aa1-451a-a8da-f537c4acc038","component":"clickhouse-client","component":"ServerContext","sql":"\n\nCREATE TABLE IF NOT EXISTS oximeter.fields_u32\n(\n timeseries_name String,\n timeseries_key UInt64,\n field_name String,\n field_value UInt32,\n last_updated_at DateTime MATERIALIZED now()\n)\nENGINE = ReplacingMergeTree()\nORDER BY (timeseries_name, field_name, field_value, timeseries_key)\nTTL last_updated_at + INTERVAL 30 DAY"} {"msg":"executing SQL query","v":0,"name":"test_database_usage","level":10,"time":"2026-05-06T22:27:44.440036863Z","hostname":"w-01KQZN477ZS1BC6HY2V5Y8CPA2","pid":18344,"id":"4f6d4606-8aa1-451a-a8da-f537c4acc038","component":"clickhouse-client","component":"ServerContext","sql":"\n\nCREATE TABLE IF NOT EXISTS oximeter.fields_i64\n(\n timeseries_name String,\n timeseries_key UInt64,\n field_name String,\n field_value Int64,\n last_updated_at DateTime MATERIALIZED now()\n)\nENGINE = ReplacingMergeTree()\nORDER BY (timeseries_name, field_name, field_value, timeseries_key)\nTTL last_updated_at + INTERVAL 30 DAY"} {"msg":"executing SQL query","v":0,"name":"test_database_usage","level":10,"time":"2026-05-06T22:27:44.443860257Z","hostname":"w-01KQZN477ZS1BC6HY2V5Y8CPA2","pid":18344,"id":"4f6d4606-8aa1-451a-a8da-f537c4acc038","component":"clickhouse-client","component":"ServerContext","sql":"\n\nCREATE TABLE IF NOT EXISTS oximeter.fields_u64\n(\n timeseries_name String,\n timeseries_key UInt64,\n field_name String,\n field_value UInt64,\n last_updated_at DateTime MATERIALIZED now()\n)\nENGINE = ReplacingMergeTree()\nORDER BY (timeseries_name, field_name, field_value, timeseries_key)\nTTL last_updated_at + INTERVAL 30 DAY"} {"msg":"executing SQL query","v":0,"name":"test_database_usage","level":10,"time":"2026-05-06T22:27:44.451052457Z","hostname":"w-01KQZN477ZS1BC6HY2V5Y8CPA2","pid":18344,"id":"4f6d4606-8aa1-451a-a8da-f537c4acc038","component":"clickhouse-client","component":"ServerContext","sql":"\n\nCREATE TABLE IF NOT EXISTS oximeter.fields_ipaddr\n(\n timeseries_name String,\n timeseries_key UInt64,\n field_name String,\n field_value IPv6,\n last_updated_at DateTime MATERIALIZED now()\n)\nENGINE = ReplacingMergeTree()\nORDER BY (timeseries_name, field_name, field_value, timeseries_key)\nTTL last_updated_at + INTERVAL 30 DAY"} {"msg":"executing SQL query","v":0,"name":"test_database_usage","level":10,"time":"2026-05-06T22:27:44.463349829Z","hostname":"w-01KQZN477ZS1BC6HY2V5Y8CPA2","pid":18344,"id":"4f6d4606-8aa1-451a-a8da-f537c4acc038","component":"clickhouse-client","component":"ServerContext","sql":"\n\nCREATE TABLE IF NOT EXISTS oximeter.fields_string\n(\n timeseries_name String,\n timeseries_key UInt64,\n field_name String,\n field_value String,\n last_updated_at DateTime MATERIALIZED now()\n)\nENGINE = ReplacingMergeTree()\nORDER BY (timeseries_name, field_name, field_value, timeseries_key)\nTTL last_updated_at + INTERVAL 30 DAY"} {"msg":"executing SQL query","v":0,"name":"test_database_usage","level":10,"time":"2026-05-06T22:27:44.474181042Z","hostname":"w-01KQZN477ZS1BC6HY2V5Y8CPA2","pid":18344,"id":"4f6d4606-8aa1-451a-a8da-f537c4acc038","component":"clickhouse-client","component":"ServerContext","sql":"\n\nCREATE TABLE IF NOT EXISTS oximeter.fields_uuid\n(\n timeseries_name String,\n timeseries_key UInt64,\n field_name String,\n field_value UUID,\n last_updated_at DateTime MATERIALIZED now()\n)\nENGINE = ReplacingMergeTree()\nORDER BY (timeseries_name, field_name, field_value, timeseries_key)\nTTL last_updated_at + INTERVAL 30 DAY"} {"msg":"executing SQL query","v":0,"name":"test_database_usage","level":10,"time":"2026-05-06T22:27:44.478510871Z","hostname":"w-01KQZN477ZS1BC6HY2V5Y8CPA2","pid":18344,"id":"4f6d4606-8aa1-451a-a8da-f537c4acc038","component":"clickhouse-client","component":"ServerContext","sql":"\n\n/* The timeseries schema table stores the extracted schema for the samples\n * oximeter collects.\n */\nCREATE TABLE IF NOT EXISTS oximeter.timeseries_schema\n(\n timeseries_name String,\n fields Nested(\n name String,\n type Enum(\n 'Bool' = 1,\n 'I64' = 2,\n 'IpAddr' = 3,\n 'String' = 4,\n 'Uuid' = 6,\n 'I8' = 7,\n 'U8' = 8,\n 'I16' = 9,\n 'U16' = 10,\n 'I32' = 11,\n 'U32' = 12,\n 'U64' = 13\n ),\n source Enum(\n 'Target' = 1,\n 'Metric' = 2\n )\n ),\n datum_type Enum(\n 'Bool' = 1,\n 'I64' = 2,\n 'F64' = 3,\n 'String' = 4,\n 'Bytes' = 5,\n 'CumulativeI64' = 6,\n 'CumulativeF64' = 7,\n 'HistogramI64' = 8,\n 'HistogramF64' = 9,\n 'I8' = 10,\n 'U8' = 11,\n 'I16' = 12,\n 'U16' = 13,\n 'I32' = 14,\n 'U32' = 15,\n 'U64' = 16,\n 'F32' = 17,\n 'CumulativeU64' = 18,\n 'CumulativeF32' = 19,\n 'HistogramI8' = 20,\n 'HistogramU8' = 21,\n 'HistogramI16' = 22,\n 'HistogramU16' = 23,\n 'HistogramI32' = 24,\n 'HistogramU32' = 25,\n 'HistogramU64' = 26,\n 'HistogramF32' = 27\n ),\n created DateTime64(9, 'UTC')\n)\nENGINE = MergeTree()\nORDER BY (timeseries_name, fields.name)"} {"msg":"inserting current version","v":0,"name":"test_database_usage","level":30,"time":"2026-05-06T22:27:44.482156834Z","hostname":"w-01KQZN477ZS1BC6HY2V5Y8CPA2","pid":18344,"id":"4f6d4606-8aa1-451a-a8da-f537c4acc038","component":"clickhouse-client","component":"ServerContext","version":14} {"msg":"executing SQL query","v":0,"name":"test_database_usage","level":10,"time":"2026-05-06T22:27:44.48222963Z","hostname":"w-01KQZN477ZS1BC6HY2V5Y8CPA2","pid":18344,"id":"4f6d4606-8aa1-451a-a8da-f537c4acc038","component":"clickhouse-client","component":"ServerContext","sql":"INSERT INTO oximeter.version (*) VALUES (14, now());"} {"msg":"starting database table usage computation","v":0,"name":"test_database_usage","level":20,"time":"2026-05-06T22:27:44.523218426Z","hostname":"w-01KQZN477ZS1BC6HY2V5Y8CPA2","pid":18344,"component":"usage-task","component":"ServerContext"} {"msg":"executing SQL query","v":0,"name":"test_database_usage","level":10,"time":"2026-05-06T22:27:44.52334538Z","hostname":"w-01KQZN477ZS1BC6HY2V5Y8CPA2","pid":18344,"id":"7ff2f1bd-3cca-4070-a141-79964d52f6f6","component":"clickhouse-client","component":"usage-task","component":"ServerContext","sql":"SELECT concat(database, '.', name) AS table_name, ifNull(total_bytes, 0) AS total_bytes, ifNull(total_rows, 0) AS total_rows FROM system.tables WHERE has_own_data"} {"msg":"failed to compute database table usage","v":0,"name":"test_database_usage","level":50,"time":"2026-05-06T22:27:44.530038755Z","hostname":"w-01KQZN477ZS1BC6HY2V5Y8CPA2","pid":18344,"component":"usage-task","component":"ServerContext","error":"Telemetry database unavailable: SQL query timed out after 30.02s"} {"msg":"starting database table usage computation","v":0,"name":"test_database_usage","level":20,"time":"2026-05-06T22:27:44.551140128Z","hostname":"w-01KQZN477ZS1BC6HY2V5Y8CPA2","pid":18344,"component":"usage-task","component":"ServerContext"} {"msg":"executing SQL query","v":0,"name":"test_database_usage","level":10,"time":"2026-05-06T22:27:44.551226984Z","hostname":"w-01KQZN477ZS1BC6HY2V5Y8CPA2","pid":18344,"id":"7ff2f1bd-3cca-4070-a141-79964d52f6f6","component":"clickhouse-client","component":"usage-task","component":"ServerContext","sql":"SELECT concat(database, '.', name) AS table_name, ifNull(total_bytes, 0) AS total_bytes, ifNull(total_rows, 0) AS total_rows FROM system.tables WHERE has_own_data"}