{"msg":"started clickhouse","v":0,"name":"test_database_usage","level":30,"time":"2026-05-07T18:48:50.620861142Z","hostname":"w-01KR1TZJT6XCXM7AKEFSJEY1B1","pid":18261,"address":"[::1]:38785"} {"msg":"task starting, creating Oximeter client","v":0,"name":"test_database_usage","level":20,"time":"2026-05-07T18:48:50.621305182Z","hostname":"w-01KR1TZJT6XCXM7AKEFSJEY1B1","pid":18261,"component":"retention-task","component":"ServerContext"} {"msg":"registered USDT probes","v":0,"name":"test_database_usage","level":20,"time":"2026-05-07T18:48:50.623773794Z","hostname":"w-01KR1TZJT6XCXM7AKEFSJEY1B1","pid":18261,"id":"68c7c7eb-a4e7-4475-bba0-a4b47f5beed4","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-07T18:48:50.623864674Z","hostname":"w-01KR1TZJT6XCXM7AKEFSJEY1B1","pid":18261,"component":"retention-task","component":"ServerContext"} {"msg":"registered USDT probes","v":0,"name":"test_database_usage","level":20,"time":"2026-05-07T18:48:50.623879984Z","hostname":"w-01KR1TZJT6XCXM7AKEFSJEY1B1","pid":18261,"id":"0f4d2a5c-c506-4343-89fe-a66808ad1683","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-07T18:48:50.625043035Z","hostname":"w-01KR1TZJT6XCXM7AKEFSJEY1B1","pid":18261,"component":"usage-task","component":"ServerContext"} {"msg":"registered USDT probes","v":0,"name":"test_database_usage","level":20,"time":"2026-05-07T18:48:50.634295102Z","hostname":"w-01KR1TZJT6XCXM7AKEFSJEY1B1","pid":18261,"id":"f0347dbf-aac5-41e5-8936-8f142cffe606","component":"clickhouse-client","component":"ServerContext"} {"msg":"executing SQL query","v":0,"name":"test_database_usage","level":10,"time":"2026-05-07T18:48:50.637172674Z","hostname":"w-01KR1TZJT6XCXM7AKEFSJEY1B1","pid":18261,"id":"0f4d2a5c-c506-4343-89fe-a66808ad1683","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":"executing SQL query","v":0,"name":"test_database_usage","level":10,"time":"2026-05-07T18:48:50.640595306Z","hostname":"w-01KR1TZJT6XCXM7AKEFSJEY1B1","pid":18261,"id":"f0347dbf-aac5-41e5-8936-8f142cffe606","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-07T18:48:50.674110872Z","hostname":"w-01KR1TZJT6XCXM7AKEFSJEY1B1","pid":18261,"id":"f0347dbf-aac5-41e5-8936-8f142cffe606","component":"clickhouse-client","component":"ServerContext"} {"msg":"initializing oximeter database to version 14","v":0,"name":"test_database_usage","level":30,"time":"2026-05-07T18:48:50.674187052Z","hostname":"w-01KR1TZJT6XCXM7AKEFSJEY1B1","pid":18261,"component":"ServerContext"} {"msg":"reading db version","v":0,"name":"test_database_usage","level":30,"time":"2026-05-07T18:48:50.674209872Z","hostname":"w-01KR1TZJT6XCXM7AKEFSJEY1B1","pid":18261,"id":"f0347dbf-aac5-41e5-8936-8f142cffe606","component":"clickhouse-client","component":"ServerContext"} {"msg":"executing SQL query","v":0,"name":"test_database_usage","level":10,"time":"2026-05-07T18:48:50.674365782Z","hostname":"w-01KR1TZJT6XCXM7AKEFSJEY1B1","pid":18261,"id":"f0347dbf-aac5-41e5-8936-8f142cffe606","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-07T18:48:50.687963232Z","hostname":"w-01KR1TZJT6XCXM7AKEFSJEY1B1","pid":18261,"id":"f0347dbf-aac5-41e5-8936-8f142cffe606","component":"clickhouse-client","component":"ServerContext"} {"msg":"read oximeter database version","v":0,"name":"test_database_usage","level":30,"time":"2026-05-07T18:48:50.688035712Z","hostname":"w-01KR1TZJT6XCXM7AKEFSJEY1B1","pid":18261,"id":"f0347dbf-aac5-41e5-8936-8f142cffe606","component":"clickhouse-client","component":"ServerContext","version":0} {"msg":"initializing oximeter schema","v":0,"name":"test_database_usage","level":30,"time":"2026-05-07T18:48:50.688060552Z","hostname":"w-01KR1TZJT6XCXM7AKEFSJEY1B1","pid":18261,"id":"f0347dbf-aac5-41e5-8936-8f142cffe606","component":"clickhouse-client","component":"ServerContext"} {"msg":"initializing ClickHouse database","v":0,"name":"test_database_usage","level":20,"time":"2026-05-07T18:48:50.688077152Z","hostname":"w-01KR1TZJT6XCXM7AKEFSJEY1B1","pid":18261,"id":"f0347dbf-aac5-41e5-8936-8f142cffe606","component":"clickhouse-client","component":"ServerContext"} {"msg":"executing SQL query","v":0,"name":"test_database_usage","level":10,"time":"2026-05-07T18:48:50.688154252Z","hostname":"w-01KR1TZJT6XCXM7AKEFSJEY1B1","pid":18261,"id":"f0347dbf-aac5-41e5-8936-8f142cffe606","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-07T18:48:50.6981931Z","hostname":"w-01KR1TZJT6XCXM7AKEFSJEY1B1","pid":18261,"id":"f0347dbf-aac5-41e5-8936-8f142cffe606","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-07T18:48:50.716956384Z","hostname":"w-01KR1TZJT6XCXM7AKEFSJEY1B1","pid":18261,"id":"f0347dbf-aac5-41e5-8936-8f142cffe606","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":"finished database table usage computation","v":0,"name":"test_database_usage","level":20,"time":"2026-05-07T18:48:50.718294965Z","hostname":"w-01KR1TZJT6XCXM7AKEFSJEY1B1","pid":18261,"component":"usage-task","component":"ServerContext"} {"msg":"executing SQL query","v":0,"name":"test_database_usage","level":10,"time":"2026-05-07T18:48:50.727158462Z","hostname":"w-01KR1TZJT6XCXM7AKEFSJEY1B1","pid":18261,"id":"f0347dbf-aac5-41e5-8936-8f142cffe606","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-07T18:48:50.731486005Z","hostname":"w-01KR1TZJT6XCXM7AKEFSJEY1B1","pid":18261,"id":"f0347dbf-aac5-41e5-8936-8f142cffe606","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-07T18:48:50.740520952Z","hostname":"w-01KR1TZJT6XCXM7AKEFSJEY1B1","pid":18261,"id":"f0347dbf-aac5-41e5-8936-8f142cffe606","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-07T18:48:50.75154077Z","hostname":"w-01KR1TZJT6XCXM7AKEFSJEY1B1","pid":18261,"id":"f0347dbf-aac5-41e5-8936-8f142cffe606","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-07T18:48:50.758217614Z","hostname":"w-01KR1TZJT6XCXM7AKEFSJEY1B1","pid":18261,"id":"f0347dbf-aac5-41e5-8936-8f142cffe606","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-07T18:48:50.775858377Z","hostname":"w-01KR1TZJT6XCXM7AKEFSJEY1B1","pid":18261,"id":"f0347dbf-aac5-41e5-8936-8f142cffe606","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-07T18:48:50.79287632Z","hostname":"w-01KR1TZJT6XCXM7AKEFSJEY1B1","pid":18261,"id":"f0347dbf-aac5-41e5-8936-8f142cffe606","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-07T18:48:50.798188034Z","hostname":"w-01KR1TZJT6XCXM7AKEFSJEY1B1","pid":18261,"id":"f0347dbf-aac5-41e5-8936-8f142cffe606","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-07T18:48:50.822044232Z","hostname":"w-01KR1TZJT6XCXM7AKEFSJEY1B1","pid":18261,"id":"f0347dbf-aac5-41e5-8936-8f142cffe606","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-07T18:48:50.830698519Z","hostname":"w-01KR1TZJT6XCXM7AKEFSJEY1B1","pid":18261,"id":"f0347dbf-aac5-41e5-8936-8f142cffe606","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-07T18:48:50.84550604Z","hostname":"w-01KR1TZJT6XCXM7AKEFSJEY1B1","pid":18261,"id":"f0347dbf-aac5-41e5-8936-8f142cffe606","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-07T18:48:50.850238304Z","hostname":"w-01KR1TZJT6XCXM7AKEFSJEY1B1","pid":18261,"id":"f0347dbf-aac5-41e5-8936-8f142cffe606","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-07T18:48:50.854395317Z","hostname":"w-01KR1TZJT6XCXM7AKEFSJEY1B1","pid":18261,"id":"f0347dbf-aac5-41e5-8936-8f142cffe606","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-07T18:48:50.856315878Z","hostname":"w-01KR1TZJT6XCXM7AKEFSJEY1B1","pid":18261,"id":"f0347dbf-aac5-41e5-8936-8f142cffe606","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-07T18:48:50.860272561Z","hostname":"w-01KR1TZJT6XCXM7AKEFSJEY1B1","pid":18261,"id":"f0347dbf-aac5-41e5-8936-8f142cffe606","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-07T18:48:50.864448374Z","hostname":"w-01KR1TZJT6XCXM7AKEFSJEY1B1","pid":18261,"id":"f0347dbf-aac5-41e5-8936-8f142cffe606","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-07T18:48:50.871001679Z","hostname":"w-01KR1TZJT6XCXM7AKEFSJEY1B1","pid":18261,"id":"f0347dbf-aac5-41e5-8936-8f142cffe606","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-07T18:48:50.876018153Z","hostname":"w-01KR1TZJT6XCXM7AKEFSJEY1B1","pid":18261,"id":"f0347dbf-aac5-41e5-8936-8f142cffe606","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-07T18:48:50.882319168Z","hostname":"w-01KR1TZJT6XCXM7AKEFSJEY1B1","pid":18261,"id":"f0347dbf-aac5-41e5-8936-8f142cffe606","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-07T18:48:50.893529636Z","hostname":"w-01KR1TZJT6XCXM7AKEFSJEY1B1","pid":18261,"id":"f0347dbf-aac5-41e5-8936-8f142cffe606","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-07T18:48:50.89826468Z","hostname":"w-01KR1TZJT6XCXM7AKEFSJEY1B1","pid":18261,"id":"f0347dbf-aac5-41e5-8936-8f142cffe606","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-07T18:48:50.902094463Z","hostname":"w-01KR1TZJT6XCXM7AKEFSJEY1B1","pid":18261,"id":"f0347dbf-aac5-41e5-8936-8f142cffe606","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-07T18:48:50.916800134Z","hostname":"w-01KR1TZJT6XCXM7AKEFSJEY1B1","pid":18261,"id":"f0347dbf-aac5-41e5-8936-8f142cffe606","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-07T18:48:50.931601115Z","hostname":"w-01KR1TZJT6XCXM7AKEFSJEY1B1","pid":18261,"id":"f0347dbf-aac5-41e5-8936-8f142cffe606","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-07T18:48:50.943806074Z","hostname":"w-01KR1TZJT6XCXM7AKEFSJEY1B1","pid":18261,"id":"f0347dbf-aac5-41e5-8936-8f142cffe606","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-07T18:48:50.949181098Z","hostname":"w-01KR1TZJT6XCXM7AKEFSJEY1B1","pid":18261,"id":"f0347dbf-aac5-41e5-8936-8f142cffe606","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-07T18:48:50.953277341Z","hostname":"w-01KR1TZJT6XCXM7AKEFSJEY1B1","pid":18261,"id":"f0347dbf-aac5-41e5-8936-8f142cffe606","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-07T18:48:50.955481873Z","hostname":"w-01KR1TZJT6XCXM7AKEFSJEY1B1","pid":18261,"id":"f0347dbf-aac5-41e5-8936-8f142cffe606","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-07T18:48:50.960209646Z","hostname":"w-01KR1TZJT6XCXM7AKEFSJEY1B1","pid":18261,"id":"f0347dbf-aac5-41e5-8936-8f142cffe606","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-07T18:48:50.967962702Z","hostname":"w-01KR1TZJT6XCXM7AKEFSJEY1B1","pid":18261,"id":"f0347dbf-aac5-41e5-8936-8f142cffe606","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-07T18:48:50.981343912Z","hostname":"w-01KR1TZJT6XCXM7AKEFSJEY1B1","pid":18261,"id":"f0347dbf-aac5-41e5-8936-8f142cffe606","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-07T18:48:50.988147108Z","hostname":"w-01KR1TZJT6XCXM7AKEFSJEY1B1","pid":18261,"id":"f0347dbf-aac5-41e5-8936-8f142cffe606","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-07T18:48:51.00450804Z","hostname":"w-01KR1TZJT6XCXM7AKEFSJEY1B1","pid":18261,"id":"f0347dbf-aac5-41e5-8936-8f142cffe606","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-07T18:48:51.009118693Z","hostname":"w-01KR1TZJT6XCXM7AKEFSJEY1B1","pid":18261,"id":"f0347dbf-aac5-41e5-8936-8f142cffe606","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-07T18:48:51.01837419Z","hostname":"w-01KR1TZJT6XCXM7AKEFSJEY1B1","pid":18261,"id":"f0347dbf-aac5-41e5-8936-8f142cffe606","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-07T18:48:51.023242704Z","hostname":"w-01KR1TZJT6XCXM7AKEFSJEY1B1","pid":18261,"id":"f0347dbf-aac5-41e5-8936-8f142cffe606","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-07T18:48:51.028393598Z","hostname":"w-01KR1TZJT6XCXM7AKEFSJEY1B1","pid":18261,"id":"f0347dbf-aac5-41e5-8936-8f142cffe606","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-07T18:48:51.032878041Z","hostname":"w-01KR1TZJT6XCXM7AKEFSJEY1B1","pid":18261,"id":"f0347dbf-aac5-41e5-8936-8f142cffe606","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-07T18:48:51.035178293Z","hostname":"w-01KR1TZJT6XCXM7AKEFSJEY1B1","pid":18261,"id":"f0347dbf-aac5-41e5-8936-8f142cffe606","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-07T18:48:51.039915497Z","hostname":"w-01KR1TZJT6XCXM7AKEFSJEY1B1","pid":18261,"id":"f0347dbf-aac5-41e5-8936-8f142cffe606","component":"clickhouse-client","component":"ServerContext","version":14} {"msg":"executing SQL query","v":0,"name":"test_database_usage","level":10,"time":"2026-05-07T18:48:51.039985327Z","hostname":"w-01KR1TZJT6XCXM7AKEFSJEY1B1","pid":18261,"id":"f0347dbf-aac5-41e5-8936-8f142cffe606","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-07T18:48:51.624983628Z","hostname":"w-01KR1TZJT6XCXM7AKEFSJEY1B1","pid":18261,"component":"usage-task","component":"ServerContext"} {"msg":"executing SQL query","v":0,"name":"test_database_usage","level":10,"time":"2026-05-07T18:48:51.625200368Z","hostname":"w-01KR1TZJT6XCXM7AKEFSJEY1B1","pid":18261,"id":"0f4d2a5c-c506-4343-89fe-a66808ad1683","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":"finished database table usage computation","v":0,"name":"test_database_usage","level":20,"time":"2026-05-07T18:48:51.62821224Z","hostname":"w-01KR1TZJT6XCXM7AKEFSJEY1B1","pid":18261,"component":"usage-task","component":"ServerContext"} {"msg":"starting database table usage computation","v":0,"name":"test_database_usage","level":20,"time":"2026-05-07T18:48:52.62468119Z","hostname":"w-01KR1TZJT6XCXM7AKEFSJEY1B1","pid":18261,"component":"usage-task","component":"ServerContext"} {"msg":"executing SQL query","v":0,"name":"test_database_usage","level":10,"time":"2026-05-07T18:48:52.624828181Z","hostname":"w-01KR1TZJT6XCXM7AKEFSJEY1B1","pid":18261,"id":"0f4d2a5c-c506-4343-89fe-a66808ad1683","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-07T18:48:52.625049521Z","hostname":"w-01KR1TZJT6XCXM7AKEFSJEY1B1","pid":18261,"component":"usage-task","component":"ServerContext","error":"Native protocol error: I/O error: Connection reset by peer (os error 131)"}