Description
Describe the bug
If the icingadb.service is stopped for a longer period of time in large environments while the icingadb-redis.service is still running, the following error occurs after a short time when starting up the icingadb.service, Icingadb tries to delete old entries in icingdb.service_state table from the database, because too much entries > 100.000
Error 1105 (HY000): Maximum writeset size exceeded
can't perform "DELETE FROM \"service_state\" WHERE id IN (?)"
The problem can also be recognized on the writing node of the Galera with the following error:
2025-04-11 0:07:24 631972 [ERROR] WSREP: rbr write fail, data_len: 0
2025-04-11 0:07:38 631972 [Warning] WSREP: transaction size limit (2147483647) exceeded: 2147483648
The problem is that the mariadb variable from Galera has this maximum value the could'nt be raised.
Variable_name: wsrep_max_ws_size
Value: 2147483647
To solve this issue: TRUNCATE TABLE service_state; in icingadb.
To Reproduce
Provide a link to a live example, or an unambiguous set of steps to reproduce this bug. Include configuration, logs, etc. to reproduce, if relevant.
- Stopp icingadb in HA Icinga Setups with active icingadb-redis.service
- Start icingadb after few days and error occurs.
Expected behavior
icingadb should be able to UPDATE/DELETE service_state table after shutoff for few days.
Your Environment
Include as many relevant details about the environment you experienced the problem in
- Icinga DB version: Icinga DB version: v1.2.1
- Icinga 2 version: r2.13.10-1
- Operating System and version: Oracle Enterprise Linux 8.10