-- Tags: no-tsan, no-asan, no-ubsan, no-msan, no-debug -- 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; SET log_query_threads = 1; SET query_profiler_real_time_period_ns = 100000000; -- a long enough query to trigger the query profiler and to record trace log SELECT sleep(2) FORMAT Null; SET query_profiler_real_time_period_ns = 1000000000; SYSTEM FLUSH LOGS; SELECT '01473_metric_log_table_event_start_time_microseconds_test'; -- query assumes that the event_time field is accurate. WITH ( SELECT event_time_microseconds, event_time FROM system.metric_log ORDER BY event_time DESC LIMIT 1 ) AS time SELECT if(dateDiff('second', toDateTime(time.1), toDateTime(time.2)) = 0, 'ok', toString(time)); SELECT '01473_trace_log_table_event_start_time_microseconds_test'; WITH ( SELECT event_time_microseconds, event_time FROM system.trace_log ORDER BY event_time DESC LIMIT 1 ) AS time SELECT if(dateDiff('second', toDateTime(time.1), toDateTime(time.2)) = 0, 'ok', toString(time)); SELECT '01473_query_log_table_event_start_time_microseconds_test'; WITH ( SELECT event_time_microseconds, event_time FROM system.query_log WHERE current_database = currentDatabase() ORDER BY event_time DESC LIMIT 1 ) AS time SELECT if(dateDiff('second', toDateTime(time.1), toDateTime(time.2)) = 0, 'ok', toString(time)); SELECT '01473_query_thread_log_table_event_start_time_microseconds_test'; WITH ( SELECT event_time_microseconds, event_time FROM system.query_thread_log WHERE current_database = currentDatabase() ORDER BY event_time DESC LIMIT 1 ) AS time SELECT if(dateDiff('second', toDateTime(time.1), toDateTime(time.2)) = 0, 'ok', toString(time)); SELECT '01473_text_log_table_event_start_time_microseconds_test'; WITH ( SELECT event_time_microseconds, event_time FROM system.query_thread_log WHERE current_database = currentDatabase() ORDER BY event_time DESC LIMIT 1 ) AS time SELECT if(dateDiff('second', toDateTime(time.1), toDateTime(time.2)) = 0, 'ok', toString(time));