|
From marko:
Using the interfaces:
sd_event_get_watchdog (3) - Enable event loop watchdog support
sd_event_set_watchdog (3) - Enable event loop watchdog support
sd_watchdog_enabled (3) - Check whether the service manager expects watchdog keep-alive notifications from a service
Rough idea: If this interface is available, we can merge srv_monitor_task and srv_master_callback, which would keep petting the watchdog in systemd. Currently a main reason to have a separate srv_monitor_task is to be able to enforce innodb_fatal_semaphore_wait_threshold when srv_master_callback is stuck waiting for a mutex. (BTW, pthread_mutex_timedwait cannot be relied on; in my experience, it can instantly return EBUSY without waiting for the timeout to expire.)
As noted in MDEV-24426, the idle 10.6 server keeps waking up 4.6 times per second. That is a bit too often in my opinion.
|