99% of all tests in the fasttest profile run in one sec or less. The
excluded tests take 10 sec or more (the slowest being
02271_replace_partition_many_tables with 30 sec).
Estimated savings: 7 min
00956_sensitive_data_masking is still flacky even after #13748 [1].
[1]: https://clickhouse-test-reports.s3.yandex.net/10373/348ef1256ea8fb8f61109c33bbdd28daf46bdc8e/functional_stateless_tests_(debug).html#fail1
The problem is that it uses the following pattern:
clickhouse-client -q ... & # run some query in background
clickhouse-client -q 'show processlist' > log
grep background-query log
But there is no guarantee that the query in background will be executed before `show processlist`:
2020.08.18 02:52:47.916386 [ 26788 ] {98c36d38-f710-4dfb-af8f-61906abc163c} <Debug> executeQuery: (from [::1]:51650) SHOW PROCESSLIST
...
2020.08.18 02:52:47.926854 [ 26756 ] {086c64fa-713b-4f8c-b702-23bfea10a49c} <Debug> executeQuery: (from [::1]:51652) select count() from system.numbers where ignore('find_me_[hidden]')=0 and ignore('fwerkh_that_magic_string_make_me_unique') = 0 FORMAT Null
Fix the test by waiting until the query in backgroud will start, and use
limited numbers + sleepEachRow over system.numbers to reduce CPU usage.
Also some of them can be even more simplified, since the system.*_log
are empty most of the time there should not be any conditions at all
(i.e. `query` LIKE and so on).