ClickHouse/tests/queries/0_stateless/01473_event_time_microseconds.sql
2020-09-25 10:39:37 -07:00

83 lines
2.6 KiB
SQL

-- This file contains tests for the event_time_microseconds field for various tables.
-- Note: Only event_time_microseconds for asynchronous_metric_log table is tested via
-- an integration test as those metrics take 60s by default to be updated.
-- Refer: tests/integration/test_asynchronous_metric_log_table.
SET log_queries = 1;
SELECT '01473_metric_log_table_event_start_time_microseconds_test';
SYSTEM FLUSH LOGS;
-- query assumes that the event_time field is accurate.
WITH (
(
SELECT event_time_microseconds
FROM system.metric_log
ORDER BY event_time DESC
LIMIT 1
) AS time_with_microseconds,
(
SELECT event_time
FROM system.metric_log
ORDER BY event_time DESC
LIMIT 1
) AS time)
SELECT if(dateDiff('second', toDateTime(time_with_microseconds), toDateTime(time)) = 0, 'ok', 'fail');
SELECT '01473_trace_log_table_event_start_time_microseconds_test';
SET log_queries = 1;
SET query_profiler_real_time_period_ns = 10000000;
SET query_profiler_cpu_time_period_ns = 10000000;
-- a long enough query to trigger the query profiler and to record trace log
SELECT count() FROM numbers(1000000000) FORMAT Null;
SELECT sleep(2) FORMAT Null;
SYSTEM FLUSH LOGS;
SELECT sleep(2) FORMAT Null;
WITH (
(
SELECT event_time_microseconds
FROM system.trace_log
ORDER BY event_time DESC
LIMIT 1
) AS time_with_microseconds,
(
SELECT event_time
FROM system.trace_log
ORDER BY event_time DESC
LIMIT 1
) AS t)
SELECT if(dateDiff('second', toDateTime(time_with_microseconds), toDateTime(t)) = 0, 'ok', 'fail'); -- success
SELECT '01473_query_log_table_event_start_time_microseconds_test';
SYSTEM FLUSH LOGS;
WITH (
(
SELECT event_time_microseconds
FROM system.query_log
ORDER BY event_time DESC
LIMIT 1
) AS time_with_microseconds,
(
SELECT event_time
FROM system.query_log
ORDER BY event_time DESC
LIMIT 1
) AS time)
SELECT if(dateDiff('second', toDateTime(time_with_microseconds), toDateTime(time)) = 0, 'ok', 'fail'); -- success
SELECT '01473_query_thread_log_table_event_start_time_microseconds_test';
SYSTEM FLUSH LOGS;
WITH (
(
SELECT event_time_microseconds
FROM system.query_thread_log
ORDER BY event_time DESC
LIMIT 1
) AS time_with_microseconds,
(
SELECT event_time
FROM system.query_thread_log
ORDER BY event_time DESC
LIMIT 1
) AS time)
SELECT if(dateDiff('second', toDateTime(time_with_microseconds), toDateTime(time)) = 0, 'ok', 'fail'); -- success