Commit Graph

102 Commits

Author SHA1 Message Date
Azat Khuzhin
5a5f99a27e Add CPU flamegraphs for perf tests
In Real profiler there is too much noise (polling, cond vars, ...)

Signed-off-by: Azat Khuzhin <a.khuzhin@semrush.com>
2023-02-17 06:07:28 +01:00
Azat Khuzhin
dc5d7809b6 Do not continue perf tests in case of exception in create_query/fill_query
Previously due to using of threading.Thread, exception had been
ignored, and perf test simply continues, yes it will show some errors,
but it also may show that the test became faster, while it is because
the underlying table was empty.

Replace threading.Thread with a SafeThread (inline implementation) that
simply rethrow exception in join.

Here is an example of such report [1], look at the ip_trie test.

  [1]: https://s3.amazonaws.com/clickhouse-test-reports/45654/2101b66570cbb9eb9a492afa8ab82d562c34336b/performance_comparison_[3/4]/report.html

Signed-off-by: Azat Khuzhin <a.khuzhin@semrush.com>
2023-02-13 17:31:15 +01:00
Raúl Marín
91dea53dbe Perf test: Log the time spent waiting for file sync 2022-12-30 12:03:43 +01:00
Azat Khuzhin
4c1fb543e1
Sync everything to persistent storage to avoid writeback affects perf tests (#43530)
Signed-off-by: Azat Khuzhin <a.khuzhin@semrush.com>

Signed-off-by: Azat Khuzhin <a.khuzhin@semrush.com>
2022-12-01 13:42:59 +01:00
Alexey Milovidov
88826e2da5 Remove "preconditions" from performance tests (overengineering, unneeded feature) 2022-05-02 02:33:22 +02:00
Alexey Milovidov
1dc56e39fc black . 2022-04-29 04:39:21 +02:00
Alexey Milovidov
2a3a2184ec Refinement 2022-04-29 04:37:57 +02:00
Alexey Milovidov
2d7d67e7bc Remove special handling of "short" queries - the logic is too ad-hoc, it pollutes the code and is difficult to handle 2022-04-29 04:27:57 +02:00
Mikhail f. Shiryaev
e6f5a3f98b
Apply black formatter to all *.py files in the repo 2022-03-22 17:39:58 +01:00
alesapin
3eb5e42972 Trying to allow bigger timeout for prewarm 2021-12-13 18:09:29 +03:00
Azat Khuzhin
8a89b8e395 perf: do not fail in case of slow queries (to avoid hiding possible issues)
Do not stop processing pathologically slow queries,
since this may hide errors in other queries,
i.e. when the test failed on one of servers (upstream or from PR)
and someone interpret this is as OK with the following comment:

  "the failure was on the upstream server it is OK, PR should fix it"

Anyway there is almost zero such queries right now, and before merging
something this should be reviewed.
2021-12-12 00:15:25 +03:00
Azat Khuzhin
7957079f95 perf: disable query/memory profiling for non prewarm queries 2021-10-27 23:20:51 +03:00
Alexander Kuzmenkov
cfcb0e4b22 properly check the settings in perf test 2021-08-04 19:41:21 +03:00
Alexander Kuzmenkov
6afd9f84f1 longer 2021-05-19 13:25:43 +03:00
Alexander Kuzmenkov
91835369cf fixup 2021-05-15 09:44:14 +03:00
Alexander Kuzmenkov
7719c1d933 collect profiles during warmup 2021-05-15 09:43:56 +03:00
Alexander Kuzmenkov
15564f32b2 Merge remote-tracking branch 'origin/master' into HEAD 2021-05-14 13:16:31 +03:00
Alexander Kuzmenkov
3e5f85ddd3 run short queries longer 2021-05-13 12:20:02 +03:00
Alexander Kuzmenkov
cc0dd732d9 stable query indexes in perf test 2021-04-28 00:58:37 +03:00
Alexander Kuzmenkov
2489b6af96 cleanup 2021-04-15 19:40:49 +03:00
Alexander Kuzmenkov
b0284f20c3
Merge branch 'master' into aku/laglead 2021-03-22 21:16:27 +03:00
Alexander Kuzmenkov
6aa9039f7d float frames and lag/lead_in_frame 2021-03-19 02:05:43 +03:00
Alexander Kuzmenkov
065faf1318 more robust error handling in perf test 2021-03-18 01:32:55 +03:00
Alexander Kuzmenkov
c18749a704 fix a bug and add some tests 2021-02-09 17:44:04 +03:00
Amos Bird
a2ceca3fa1
Fix recursive propagation 2021-01-26 10:29:12 +08:00
Azat Khuzhin
04a93f18e8 perf: fail on unknown settings 2020-11-27 00:16:41 +03:00
Azat Khuzhin
a591886740 perf: remove outdated comments from perf.py
Refs: https://github.com/ClickHouse/ClickHouse/pull/17255#discussion_r528822709
2020-11-27 00:16:41 +03:00
myrrc
fbb0e6e6aa Merge remote-tracking branch 'upstream/master' into improvement/diff-types-in-avg-weighted 2020-11-24 16:04:17 +03:00
Alexander Kuzmenkov
a543c8e468 Add an option to use existing tables to perf.py 2020-11-23 21:05:54 +03:00
Azat Khuzhin
d676e2f5c5 Pass settings for perf tests via protocol over SET query
Thus they will be applied on reconnects, since clickhouse-driver may
implicitly do it if the connection has been failed.
2020-11-21 14:02:33 +03:00
Azat Khuzhin
3ddb0ac53e Configure logging for perf test runner 2020-11-21 14:02:33 +03:00
Alexander Kuzmenkov
b0e660651a cleanup 2020-11-16 19:09:58 +03:00
Alexander Kuzmenkov
1617442242 fixup 2020-09-30 14:55:24 +03:00
Alexander Kuzmenkov
f8047102fe fixup 2020-09-29 22:06:45 +03:00
Alexander Kuzmenkov
6671b26f20 fixes 2020-09-28 21:43:47 +03:00
Alexander Kuzmenkov
3d1456a55d Merge remote-tracking branch 'origin/master' into HEAD 2020-09-28 21:19:53 +03:00
Alexander Kuzmenkov
c48d212320 performance comparison 2020-09-28 15:09:08 +03:00
Alexander Kuzmenkov
3ff16325d8 fix the profiler 2020-09-25 12:52:09 +03:00
Alexander Kuzmenkov
40209f9ed2 Merge remote-tracking branch 'origin/master' into HEAD 2020-09-25 11:28:47 +03:00
Alexander Kuzmenkov
651518566a performance comparison 2020-09-24 16:24:44 +03:00
Alexander Kuzmenkov
dee34a834f debug perf test run time 2020-09-24 14:46:03 +03:00
Alexander Kuzmenkov
2b6f4134eb Parallel create/fill in perf test 2020-09-23 11:22:54 +03:00
Alexander Kuzmenkov
4696e22799
Update perf.py 2020-09-21 22:08:41 +03:00
Alexey Milovidov
ef800b5083 Perf test: development 2020-09-19 21:21:29 +03:00
Alexey Milovidov
35e8a895b6 Calculate profiler data in separate query runs 2020-09-19 20:38:21 +03:00
Alexey Milovidov
03aec83aec Remove obsolete code from performance test 2020-09-19 19:27:37 +03:00
Alexander Kuzmenkov
840586bd98
Merge pull request #14386 from ClickHouse/aku/perf-short
[wip] an experiment with short queries in perf test
2020-09-18 17:54:50 +03:00
Alexander Kuzmenkov
7f029ee03c
Update perf.py 2020-09-18 11:27:27 +03:00
Alexander Kuzmenkov
4fc86f05da some fixes + docs + report queries that are not short 2020-09-17 19:21:59 +03:00
Alexander Kuzmenkov
ada1c7c4a0 fixup 2020-09-17 13:15:46 +03:00