Commit Graph

247 Commits

Author SHA1 Message Date
alesapin
8e1fec39cd Fix bash 2021-12-13 12:58:34 +03:00
alesapin
e2a2d1cdc3 Merge branch 'master' into add_performance_tests 2021-12-13 12:01:31 +03:00
alesapin
cf281b10dc Split perf test into multiple checks 2021-12-13 11:59:58 +03:00
Azat Khuzhin
44f366fd12 Cleanup perf test runner
Use subshell to:
- avoid change/restore of TIMEFORMAT
- grepping out trace output, by using set +x in a subshell
- use array for options to avoid extra backslashes
2021-12-12 13:58:00 +03:00
alesapin
eb51d9550d
Merge branch 'master' into add_performance_tests 2021-12-12 01:01:13 +03:00
tavplubix
85e53b1b1f
Try fix attaching gdb in tests (#32448)
* attach gdb with sudo

* fix

* Update run.sh
2021-12-10 00:12:45 +03:00
alesapin
b62de9b2f4 Merge branch 'master' into add_performance_tests 2021-12-09 11:40:32 +03:00
Azat Khuzhin
3e96b28843 perf: convert killall to pkill (since killall has some magic, see -e option) 2021-12-03 10:56:42 +03:00
Azat Khuzhin
fb0cc62509 perf: fix waiting of the server after running tests
killall requires strict match, i.e. "clickhouse-server" not
"clickhouse":

    2021-12-03 05:24:56      + env kill -- -21700
    2021-12-03 05:24:56      kill: (-21700): No such process
    2021-12-03 05:24:56      + killall clickhouse
    2021-12-03 05:24:56      clickhouse: no process found
    2021-12-03 05:24:56      + echo Servers stopped.
    2021-12-03 05:24:56      Servers stopped.
    2021-12-03 05:24:56      + analyze_queries

    $ tail -n1 *-server-log.log
    ==> left-server-log.log <==
    2021.12.03 05:26:59.530647 [ 450 ] {} <Trace> SystemLog (system.asynchronous_metric_log): Flushed system log up to offset 1668052

    ==> right-server-log.log <==
    2021.12.03 05:27:20.873136 [ 466 ] {} <Trace> SystemLog (system.metric_log): Flushed system log up to offset 9605

    ==> setup-server-log.log <==
    2021.12.03 02:47:14.844395 [ 96 ] {} <Information> Application: Child process exited normally with code 0.

As you can see killall instantly fails with no such process, while this
cannot be true since it was there, and also according to logs there were
messages after running analyze_queries() from compare.sh

This should fix problems like in [1].

  [1]: https://clickhouse-test-reports.s3.yandex.net/32080/344298f4037f88b114b8e798bb30036b24be8f16/performance_comparison/report.html#fail1
2021-12-03 10:55:35 +03:00
alesapin
cf2f019caa Disable full run in perf tests 2021-11-24 23:05:27 +03:00
alesapin
2396f73e08 Fix performance tests comparison 2021-11-23 11:34:10 +03:00
Azat Khuzhin
afd960db4e perf: remove redundant query profiler set queries 2021-11-03 08:09:43 +03:00
avogar
4e63311bb6 Try fix perf test 2021-11-01 12:13:29 +03:00
Azat Khuzhin
9eef2ad0c2 perf: reduce number of times the query will run
Before this patch:

- upstream/master and PR's *with* perf tests or pef scripts changes:
  --runs=13 --max-queries=0

- PRs *without* perf changes:
  --runs=7 --max-queries=20

- PRs w/ only perf tests changes:
  --runs-13 --max-queries=0 <list of perf tests>

After:

- upstream/master and PR's *with* perf tests changes:
  --runs=13 --max-queries=0

- PRs *without* perf changes:
  --runs=7 --max-queries=10

- PRs w/ only perf tests changes:
  --runs-13 --max-queries=0 <list of perf tests>

So to underline, now we will not look at perf scripts changes anymore,
and we will also decrease number of random queries to run to 10.
2021-10-27 23:20:51 +03:00
Azat Khuzhin
190459db33 perf: add queries with errors during process too to the perf artifacts
Sometimes queries fails with timeout, and you will not get any perf
metrics for it before this patch.

Example: https://clickhouse-test-reports.s3.yandex.net/30611/5ff6c5536558821824d5fdf25a75729e5b82060d/performance_comparison/report.html#partial-queries.flat_dictionary.5
2021-10-27 23:20:51 +03:00
Alexander Kuzmenkov
a7d405759c fix decimal formatting settings in perf test 2021-08-19 21:44:04 +03:00
Alexander Kuzmenkov
43602a838a
Update compare.sh 2021-08-16 18:14:47 +03:00
Alexander Kuzmenkov
cfb317a9a9
Update compare.sh 2021-07-22 18:37:20 +03:00
Alexey Milovidov
7ae15fee31 Change performance test after adjusted the name of column 2021-07-05 22:08:29 +03:00
Azat Khuzhin
a471ebdabe Fix performance tests after converting ProfileEvents to Map type 2021-06-30 21:00:36 +03:00
Maksim Kita
352e1f27ff Update using Map datatyle in system log tables before merge 2021-06-28 14:42:21 +03:00
Maksim Kita
294b937a39
Merge branch 'system-query-log-map-type-merge' into system-querylog-map-continue 2021-06-28 11:27:59 +03:00
Alexander Kuzmenkov
f4d7baaaff Merge remote-tracking branch 'origin/aku/perf-test' into HEAD 2021-06-08 18:10:19 +03:00
Alexander Kuzmenkov
07fceb667e fix 2021-06-08 17:12:47 +03:00
alexey-milovidov
cd2ca76b24
Update compare.sh 2021-06-06 12:57:18 +03:00
Alexander Kuzmenkov
1c5e069d0d fixes 2021-06-04 18:27:21 +03:00
Alexander Kuzmenkov
8554cb621e some perf test script improvements 2021-06-03 20:40:05 +03:00
Alexander Kuzmenkov
5da54c2745 calculate perf test precision thresholds from historical data 2021-05-26 16:30:43 +03:00
hexiaoting
a1d521902c Merge remote-tracking branch 'origin/master' into dev-continue-sundyli 2021-05-07 14:22:53 +08:00
Alexander Kuzmenkov
1e7fc204d8
Merge pull request #23554 from ClickHouse/aku/perf-numa-attributes
add numactl info to perf test run attributes
2021-04-27 14:09:57 +03:00
Alexander Kuzmenkov
bfa47f7c5f
Update compare.sh 2021-04-26 12:41:29 +03:00
Alexander Kuzmenkov
5d101336ff fix 2021-04-26 12:39:54 +03:00
Alexander Kuzmenkov
c40a300d03 add numactl info to perf run attributes 2021-04-23 23:52:18 +03:00
Alexander Kuzmenkov
5f1c825e1d
Update compare.sh 2021-04-23 22:01:24 +03:00
Alexander Kuzmenkov
e052edc7df
Update compare.sh 2021-04-23 20:32:30 +03:00
Alexander Kuzmenkov
bcc0744adb fix 2021-04-23 18:54:48 +03:00
Alexander Kuzmenkov
e51c844e2c add more info to perf test report 2021-04-23 16:47:33 +03:00
Alexander Kuzmenkov
3f855cb714 more 2021-04-22 20:18:21 +03:00
Alexander Kuzmenkov
6a1414663f upload cpu model to perf test db 2021-04-22 19:48:32 +03:00
alexey-milovidov
0c70b06960
Merge branch 'master' into system-querylog-map 2021-03-31 04:54:30 +03:00
Alexander Kuzmenkov
5ae5134147
Merge pull request #21846 from ClickHouse/aku/perf-test-error
more robust error handling in perf test
2021-03-22 17:18:37 +03:00
Alexander Kuzmenkov
8ab778e26a
Merge pull request #21754 from ClickHouse/aku/fuzzer-ci-sources
make the fuzzer use sources from the CI
2021-03-18 18:02:13 +03:00
Alexander Kuzmenkov
f2ac17cfba
Update compare.sh 2021-03-18 17:59:49 +03:00
Alexander Kuzmenkov
065faf1318 more robust error handling in perf test 2021-03-18 01:32:55 +03:00
Alexander Kuzmenkov
a78b234a6d fixes 2021-03-15 21:45:57 +03:00
Alexander Kuzmenkov
08148e062f Fix a rare false negative in perf tests 2021-03-02 19:21:30 +03:00
Azat Khuzhin
9a26409147 Fix performance tests (by avoid sharding status file for right and left server)
Since cp -al (hard links):

    2021.02.21 01:09:09.991771 [ 243 ] {} <Information> StatusFile: Status file right/db/status already exists - unclean restart. Contents:
    PID: 241
    Started at: 2021-02-21 01:09:09
    Revision: 54448

    2021.02.21 01:09:09.992007 [ 243 ] {} <Error> Application: DB::Exception: Cannot lock file right/db/status. Another server instance in same directory is already running.
2021-02-21 10:56:48 +03:00
sundy-li
339133f32a Support Map for OpenTelemetrySpanLog && improve docs update 2021-01-22 13:16:13 +08:00
Azat Khuzhin
de7909211d Try using top_level_domains from the patched performance archive
If there is top_level_domains list in the upstream/master, use from the
patched version (this is required to run all performance tests for
upstream/master in the PR).
2021-01-02 17:27:03 +03:00
Azat Khuzhin
469b631ca6 Fix performance comparison
In #18113 the top_level_domains list copying was moved into
docker/packager/binary/build.sh, this was done to avoid symlinks (since
Dockerfile cannot dereference them).

But the patch was wrong, since it copied into the root (/), which is not
included into performance.tgz and also compare.sh was not modified.

This wasn't showed up with CI checks since the docker image wasn't
updated and it still included that top_level_domains, once it was
modified the image was updated and it became broken.

Cc: @akuzm
2021-01-02 17:09:20 +03:00