Join GitHub today
GitHub is home to over 36 million developers working together to host and review code, manage projects, and build software together.Sign up
[dev.icinga.com #11534] DowntimesExpireTimerHandler crashes Icinga2 with <unknown function> #4095
This issue has been migrated from Redmine: https://dev.icinga.com/issues/11534
Created by PowellEB on 2016-04-05 19:19:12 +00:00
Moved from old icinga2 (2.4.4) Centos to new hardware on Ubuntu 14.04 (2.4.4-1) with two Node cluster.
Since new database on Ubuntu, dumped all old downtimes (author_name, downtime_type,comment_data,scheduled_start_time,scheduled_end_time, name).
Added old downtimes to new database from external command (icinga2.cmd). All went in fine.
40 minutes later, icinga2 #01 crashed. Two of the crash reports are attached. and below in message.
It looked like icinga2 had processed (added) downtimes that had already ended, then when DowntimesExpireTimerHandler tried
The only way to get the config check to pass and run icinga2 was to remove downtimes from /var/lib/icinga2/api/packages/_api/....../conf.d/downtimes
Both nodes are running now. However we cannot delete old downtimes now.
(1) reporting the issue, and crash info below + attachements.
(2) how to repair the current inconsistencies for api & icinga_downtimehistory ?
dump all downtimes from icinga_downtimehistory
If this will work, but question is how to reset the "internal_downtime_id" counter so we do not get duplicate ids again?
Text from Crash:
(0) libpthread.so.0: (+0x10340) [0x7f64286fe340]
Failed to launch GDB: No such file or directory
2016-04-12 10:05:43 +00:00 by gbeutner 974ca9f
2016-04-20 08:09:34 +00:00 by gbeutner 159681c
Updated by mfriedrich on 2016-04-06 15:58:03 +00:00
Can you please install gdb and generate a backtrace once this issue happens again? Thanks.
Updated by mfriedrich on 2016-05-02 13:28:17 +00:00
I guess there is a problem with this patch for expiring downtimes.
The check for active objects looks like this
but the downtime class overrides that function with the same signature.
That way the patch does not work. I'll create a follow-up issue for that.