mirror of
https://mau.dev/maunium/synapse.git
synced 2025-01-18 23:52:10 +01:00
Attempt to fix PhoneHomeStatsTestCase.test_performance_100 being flaky. (#7634)
This commit is contained in:
parent
139bc86f3d
commit
02f345d053
2 changed files with 24 additions and 19 deletions
1
changelog.d/7634.misc
Normal file
1
changelog.d/7634.misc
Normal file
|
@ -0,0 +1 @@
|
||||||
|
Attempt to fix flaky test: `PhoneHomeStatsTestCase.test_performance_100`.
|
|
@ -488,6 +488,29 @@ def phone_stats_home(hs, stats, stats_process=_stats_process):
|
||||||
if uptime < 0:
|
if uptime < 0:
|
||||||
uptime = 0
|
uptime = 0
|
||||||
|
|
||||||
|
#
|
||||||
|
# Performance statistics. Keep this early in the function to maintain reliability of `test_performance_100` test.
|
||||||
|
#
|
||||||
|
old = stats_process[0]
|
||||||
|
new = (now, resource.getrusage(resource.RUSAGE_SELF))
|
||||||
|
stats_process[0] = new
|
||||||
|
|
||||||
|
# Get RSS in bytes
|
||||||
|
stats["memory_rss"] = new[1].ru_maxrss
|
||||||
|
|
||||||
|
# Get CPU time in % of a single core, not % of all cores
|
||||||
|
used_cpu_time = (new[1].ru_utime + new[1].ru_stime) - (
|
||||||
|
old[1].ru_utime + old[1].ru_stime
|
||||||
|
)
|
||||||
|
if used_cpu_time == 0 or new[0] == old[0]:
|
||||||
|
stats["cpu_average"] = 0
|
||||||
|
else:
|
||||||
|
stats["cpu_average"] = math.floor(used_cpu_time / (new[0] - old[0]) * 100)
|
||||||
|
|
||||||
|
#
|
||||||
|
# General statistics
|
||||||
|
#
|
||||||
|
|
||||||
stats["homeserver"] = hs.config.server_name
|
stats["homeserver"] = hs.config.server_name
|
||||||
stats["server_context"] = hs.config.server_context
|
stats["server_context"] = hs.config.server_context
|
||||||
stats["timestamp"] = now
|
stats["timestamp"] = now
|
||||||
|
@ -522,25 +545,6 @@ def phone_stats_home(hs, stats, stats_process=_stats_process):
|
||||||
stats["cache_factor"] = hs.config.caches.global_factor
|
stats["cache_factor"] = hs.config.caches.global_factor
|
||||||
stats["event_cache_size"] = hs.config.caches.event_cache_size
|
stats["event_cache_size"] = hs.config.caches.event_cache_size
|
||||||
|
|
||||||
#
|
|
||||||
# Performance statistics
|
|
||||||
#
|
|
||||||
old = stats_process[0]
|
|
||||||
new = (now, resource.getrusage(resource.RUSAGE_SELF))
|
|
||||||
stats_process[0] = new
|
|
||||||
|
|
||||||
# Get RSS in bytes
|
|
||||||
stats["memory_rss"] = new[1].ru_maxrss
|
|
||||||
|
|
||||||
# Get CPU time in % of a single core, not % of all cores
|
|
||||||
used_cpu_time = (new[1].ru_utime + new[1].ru_stime) - (
|
|
||||||
old[1].ru_utime + old[1].ru_stime
|
|
||||||
)
|
|
||||||
if used_cpu_time == 0 or new[0] == old[0]:
|
|
||||||
stats["cpu_average"] = 0
|
|
||||||
else:
|
|
||||||
stats["cpu_average"] = math.floor(used_cpu_time / (new[0] - old[0]) * 100)
|
|
||||||
|
|
||||||
#
|
#
|
||||||
# Database version
|
# Database version
|
||||||
#
|
#
|
||||||
|
|
Loading…
Add table
Reference in a new issue