Commit Graph

50 Commits

Author SHA1 Message Date
Azat Khuzhin
2b936a59e4 Add sanity checks RUsageCounters::incrementProfileEvents()
Can be triggered with the 02380_insert_mv_race test now in
debug/sanitizers build.
2022-11-18 21:10:43 +01:00
Robert Schulze
1a0b5f33b3
More consistent use of platform macros
cmake/target.cmake defines macros for the supported platforms, this
commit changes predefined system macros to our own macros.

__linux__ --> OS_LINUX
__APPLE__ --> OS_DARWIN
__FreeBSD__ --> OS_FREEBSD
2022-06-10 10:22:31 +02:00
Amos Bird
4a5e4274f0
base should not depend on Common 2022-04-29 10:26:35 +08:00
Azat Khuzhin
6df54611a9 Log which taskstats provider is in use
Signed-off-by: Azat Khuzhin <a.khuzhin@semrush.com>
v2: add missing __builtin_unreachable() for gcc built [1]
    [1]: https://s3.amazonaws.com/clickhouse-builds/36351/99e72a960325cc1fb3cd3d6a1b56cf2b1cc2d733/binary_gcc/build_log.log
(cherry picked from commit 2be022cb56)
2022-04-25 07:56:54 +03:00
Alexey Milovidov
74bb6349c2
Revert "Strict taskstats parser" 2022-04-25 01:15:08 +03:00
Azat Khuzhin
2be022cb56 Log which taskstats provider is in use
Signed-off-by: Azat Khuzhin <a.khuzhin@semrush.com>
v2: add missing __builtin_unreachable() for gcc built [1]
    [1]: https://s3.amazonaws.com/clickhouse-builds/36351/99e72a960325cc1fb3cd3d6a1b56cf2b1cc2d733/binary_gcc/build_log.log
2022-04-20 21:39:26 +03:00
Maksim Kita
e7772ed434 Fix clang-tidy warnings in Common folder 2022-03-14 18:17:35 +00:00
Azat Khuzhin
baf14444e6 Cleanup ProfileEvents and CurrentMetrics 2021-11-10 21:15:27 +03:00
Alexey Milovidov
fe6b7c77c7 Rename "common" to "base" 2021-10-02 10:13:14 +03:00
Yuriy Chernyshov
5a2bd0b6ba Enable thread_local in Arcadia build 2021-05-12 13:33:38 +03:00
Benjamin Naecker
57fd59b73b Adds support for building on Solaris-derived systems
This commit adds a number of changes to platform-detection and
compile-time directives required to support building ClickHouse on
Solaris-derived systems, most notably illumos.
2021-04-28 16:32:41 -07:00
Azat Khuzhin
fff6b5549e Hide getCurrentTimeNanoseconds() to avoid possible errors
To avoid further errors like in:
- c0e15ba348 ("Fix RealTimeMicroseconds ProfileEvents")
- c856d02e0f4a519cd2a29ffbe1135196de0bc65a ("Fix query_thread_log.query_duration_ms unit")
2020-10-31 11:15:27 +03:00
Azat Khuzhin
553f6aa4cd Remove unused functions 2020-10-07 21:30:53 +03:00
Artem Zuikov
51ba12c2c3
Try speedup build (#14809) 2020-09-15 12:55:57 +03:00
bharatnc
44e168bea7 query_start_time_microseconds field in system.query_log
Add a new field called `query_start_time_microseconds`  that will add
`microseconds`. This new field will be of type `DateTime64`.
2020-09-04 09:42:18 -07:00
Alexander Kuzmenkov
5a662ca48c Add perf metric for NUMA-local memory access 2020-07-17 20:10:59 +03:00
Alexander Kuzmenkov
af8d62bbcb Add TLB misses perf counters. 2020-06-29 15:48:18 +03:00
Alexander Kuzmenkov
a8db0b40d0 add page fault perf events 2020-06-25 23:42:31 +03:00
Alexander Kuzmenkov
377da4656d cleanup 2020-06-04 18:51:34 +03:00
Alexander Kuzmenkov
42debdfbb2 build fixes 2020-06-02 17:09:51 +03:00
Alexander Kuzmenkov
d9f00a8f48 fix build 2020-06-02 12:58:48 +03:00
Alexander Kuzmenkov
aa1f552a8f build fixes 2020-06-01 20:13:54 +03:00
Alexander Kuzmenkov
6e3bbf83e3 thread-local perf events 2020-05-29 16:04:32 +03:00
Alexander Kuzmenkov
3c18344b06 account for counter multiplexing 2020-05-28 13:48:34 +03:00
Andrey Skobtsov
93d8e8c404 Removed perf page faults as they already exist in rusage 2020-05-22 14:09:14 +03:00
Andrey Skobtsov
e3b756e65f Added cpu-clock to the list of supported events as it is included in perf and can be disabled if needed 2020-05-21 23:40:47 +03:00
Andrey Skobtsov
790d7c2000 Reverted ctime > sys/time.h include just to not show it in the pull request 2020-05-21 23:29:20 +03:00
Andrey Skobtsov
5217fd7952 Renamed counters_id to latest_counters_id to be more specific about what this variable holds 2020-05-21 23:27:33 +03:00
Andrey Skobtsov
72e5545c51 Logging warnings instead of infos and always as the user can select
what metrics he wants to measure and perf measurements will be disabled by default
2020-05-21 23:20:55 +03:00
Andrey Skobtsov
a329a6a86a Fixed compilation on non linux devices 2020-05-20 21:54:07 +03:00
Andrey Skobtsov
4816abed28 Settings for measuring only particular metrics via perf events 2020-05-20 21:25:49 +03:00
Andrey Skobtsov
844aac40e5 typedef > using 2020-05-19 21:25:40 +03:00
Andrey Skobtsov
b6d6427748 Added file descriptors threshold 2020-05-19 21:22:30 +03:00
Andrey Skobtsov
4103700aa6 Changed comments 2020-05-19 01:17:19 +03:00
Andrey Skobtsov
e46cabe1d8 UInt64 numbers to track active counters instead of memory addresses 2020-05-19 01:13:55 +03:00
Andrey Skobtsov
979b357c05 Removed unused method 2020-05-19 00:46:46 +03:00
Andrey Skobtsov
1edd29b3f8 Removed custom events as they don't work in an "increment" manner 2020-05-18 15:23:47 +03:00
Andrey Skobtsov
e7bea6e03a Renamed events 2020-05-18 14:44:40 +03:00
Andrey Skobtsov
182e4f2c0b Added running and enabled time for perf metrics 2020-05-18 13:40:01 +03:00
Andrey Skobtsov
cae41826a8 Merge branch 'master' into perf_events_metrics
# Conflicts:
#	src/Common/ThreadProfileEvents.cpp
#	src/Common/ThreadProfileEvents.h
#	src/Common/ThreadStatus.cpp
#	src/Common/ThreadStatus.h
2020-05-17 00:21:22 +03:00
Alexander Kazakov
e9baaa439b
Implementation of new system metrics provider (Procfs) (#10544)
* New metrics provider (Procfs) + Refactored TasksStatsCounters

* Trivial statless test that ProcFS is provided

* Trivial perf test for ProcfsMetricsProvider

Co-authored-by: alexey-milovidov <milovidov@yandex-team.ru>
2020-05-01 21:47:41 +03:00
Andrey Skobtsov
b6a5b1b12f Fix styling 2020-04-23 22:38:15 +03:00
Andrey Skobtsov
0cf949f1b5 A bit of reformatting code 2020-04-23 21:50:12 +03:00
Andrey Skobtsov
30a87a8a58 perf events' values are 64 bit unsigned; so, read them instead of the signed ones 2020-04-23 21:50:12 +03:00
Andrey Skobtsov
30e19c3abb Using the same file descriptors for all counters on the current thread (only one instance of PerfEventsCounters can be active at a given time for a thread) 2020-04-23 21:50:12 +03:00
Andrey Skobtsov
396c9e4279 Fixed styling v2 2020-04-14 19:23:33 +03:00
Andrey Skobtsov
578faa01a7 Handle CAP_SYS_ADMIN permission accordingly 2020-04-14 16:55:46 +03:00
Andrey Skobtsov
8650c19967 Fixed styling 2020-04-14 00:10:31 +03:00
Andrey Skobtsov
afaa7eca51 Merge branch 'master' into perf_events_metrics
# Conflicts:
#	dbms/src/Common/ProfileEvents.cpp
2020-04-13 23:59:48 +03:00
Ivan Lezhankin
06446b4f08 dbms/ → src/ 2020-04-03 18:14:31 +03:00