Details
-
Bug
-
Status: Closed (View Workflow)
-
Major
-
Resolution: Fixed
-
10.1.33, 10.2.15, 10.3.6
Description
The function srv_do_purge() is invoking service_manager_extend_timeout() without any rate limit, wasting CPU in both the MariaDB server and systemd.
The call would only make sense during a slow shutdown SET GLOBAL innodb_fast_shutdown=0. Even then, it would make sense to rate-limit the output, and write an accumulated count only every N seconds. The purpose of the call is to prevent systemd from killing the server due to seeming hang, and to inform the user about the progress. It would be even more useful if there was an indication of work that remains to be done.
Also other calls to service_manager_extend_timeout() should be appropriately rate-limited and possibly disabled outside startup or shutdown.
danblack, as the contributor of MDEV-14705, do you know the default timeout before any EXTEND_TIMEOUT_USEC message was sent to systemd?
Attachments
Issue Links
- is caused by
-
MDEV-14705 systemd: EXTEND_TIMEOUT_USEC= to avoid startup and shutdown timeouts
- Closed
- relates to
-
MDEV-16168 Performance regression on sysbench write benchmarks from 10.2 to 10.3
- Closed
-
MDEV-17571 Make systemd timeout behavior more compatible with long Galera SSTs
- Closed
-
MDEV-17934 Make systemd timeout behavior more compatible with longer Galera recovery times
- Closed