void IdoMysqlConnection::Resume(void)
{
+ if (!IsPaused())
+ return;
+
DbConnection::Resume();
m_Connected = false;
void IdoMysqlConnection::Pause(void)
{
+ if (!GetEnableHa()) {
+ Log(LogInformation, "IdoMysqlConnection", "HA functionality disabled. Won't pause IDO connection: " + GetName());
+ return;
+ }
+
m_ReconnectTimer.reset();
DbConnection::Pause();
void IdoPgsqlConnection::Resume(void)
{
+ if (!IsPaused())
+ return;
+
DbConnection::Resume();
m_Connection = NULL;
void IdoPgsqlConnection::Pause(void)
{
+ if (!GetEnableHa()) {
+ Log(LogInformation, "IdoMysqlConnection", "HA functionality disabled. Won't pause IDO connection: " + GetName());
+ return;
+ }
+
m_ReconnectTimer.reset();
DbConnection::Pause();
%attribute %number "systemcommands_age",
},
- %attribute %number "categories"
+ %attribute %number "categories",
+
+ %attribute %number "enable_ha",
}
query2.Fields->Set("status_update_time", DbValue::FromTimestamp(Utility::GetTime()));
query2.Fields->Set("program_start_time", DbValue::FromTimestamp(Application::GetStartTime()));
query2.Fields->Set("is_currently_running", 1);
+ query2.Fields->Set("endpoint_name", IcingaApplication::GetInstance()->GetNodeName());
query2.Fields->Set("process_id", Utility::GetPid());
query2.Fields->Set("daemon_mode", 1);
query2.Fields->Set("last_command_check", DbValue::FromTimestamp(Utility::GetTime()));
void DbConnection::PrepareDatabase(void)
{
- /*
+ /*
* only clear tables on reconnect which
* cannot be updated by their existing ids
* for details check https://dev.icinga.org/issues/5565