]> granicus.if.org Git - icinga2/commit
Improve DB IDO HA failover behaviour
authorMichael Friedrich <michael.friedrich@icinga.com>
Fri, 29 Mar 2019 14:53:56 +0000 (15:53 +0100)
committerMichael Friedrich <michael.friedrich@icinga.com>
Mon, 1 Apr 2019 06:50:00 +0000 (08:50 +0200)
commit149f640fd8e9191efcf69a60e8ce83f38101d359
treec31dbded16d85ee7d612a702c9ff9d0da0f5c213
parent34e03644fbb43fa08d8a19d5208881aa489dd1bb
Improve DB IDO HA failover behaviour

- Decrease Object Authority updates to 10s (was 30s)
- Decrease failover timeout to 30s (was 60s)
- Decrease cold startup (after (re)start) with no OA updates to 30s (was 60s)
- Immediately connect on Resume()
- Fix query priority which got broken with #6970
- Add more logging when a failover is in progress

```
[2019-03-29 16:13:53 +0100] information/IdoMysqlConnection: Last update by endpoint 'master1' was 8.33246s ago (< failover timeout of 30s). Retrying.

[2019-03-29 16:14:23 +0100] information/IdoMysqlConnection: Last update by endpoint 'master1' was 38.3288s ago. Taking over 'ido-mysql' in HA zone 'master'.
```

- Add more logging for reconnect and disconnect handling
- Add 'last_failover' attribute to IDO*Connection objects

refs #6970
doc/09-object-types.md
lib/base/workqueue.hpp
lib/db_ido/dbconnection.cpp
lib/db_ido/dbconnection.ti
lib/db_ido_mysql/idomysqlconnection.cpp
lib/db_ido_pgsql/idopgsqlconnection.cpp
lib/remote/apilistener.cpp
lib/remote/authority.cpp