ClickHouse/tests/queries/0_stateless/01051_system_stack_trace.sql

Ignoring revisions in .git-blame-ignore-revs. Click here to bypass and see the normal blame view.

25 lines
1.1 KiB
MySQL
Raw Normal View History

-- Tags: no-parallel
-- Tag no-parallel: to decrease failure probability of collecting stack traces
-- Process one thread at a time
SET max_block_size = 1;
-- It is OK to have bigger timeout here since:
-- a) this test is marked as no-parallel
-- b) there is a filter by thread_name, so it will send signals only to the threads with the name TCPHandler
-- c) max_block_size is 1
SET storage_system_stack_trace_pipe_read_timeout_ms = 5000;
-- { echo }
SELECT count() > 0 FROM system.stack_trace WHERE query_id != '' AND thread_name = 'TCPHandler';
-- opimization for not reading /proc/self/task/{}/comm and avoid sending signal
SELECT countIf(thread_id > 0) > 0 FROM system.stack_trace;
-- optimization for trace
SELECT length(trace) > 0 FROM system.stack_trace WHERE length(trace) > 0 LIMIT 1;
-- optimization for query_id
SELECT length(query_id) > 0 FROM system.stack_trace WHERE query_id != '' AND thread_name = 'TCPHandler' LIMIT 1;
-- optimization for thread_name
SELECT length(thread_name) > 0 FROM system.stack_trace WHERE thread_name != '' LIMIT 1;
-- enough rows (optimizations works "correctly")
SELECT count() > 100 FROM system.stack_trace;