Hello,
when we use oracle database, watchdog process always terminated at zabbix_server startup. This caused by 1 DB connection restriction used when we initialize libsqlora8: sqlo_init(SQLO_OFF, 1, 100) in zbx_db_connect.
In this code:
We always hold one connection opened before init_config call, and trying to open new connection in ping_database. So, it's better to close first connection because we don't need it after init_config:
Patch against 1.4.4 attached to this message.
when we use oracle database, watchdog process always terminated at zabbix_server startup. This caused by 1 DB connection restriction used when we initialize libsqlora8: sqlo_init(SQLO_OFF, 1, 100) in zbx_db_connect.
In this code:
Code:
void main_watchdog_loop()
{
/* Disable writing to database in zabbix_syslog() */
CONFIG_ENABLE_LOG = 0;
DBconnect(ZBX_DB_CONNECT_NORMAL);
init_config();
for(;;)
{
ping_database();
sleep(60);
}
/* We will never reach this point */
DBclose();
}
Code:
void main_watchdog_loop()
{
/* Disable writing to database in zabbix_syslog() */
CONFIG_ENABLE_LOG = 0;
DBconnect(ZBX_DB_CONNECT_NORMAL);
init_config();
DBclose();
for(;;)
{
ping_database();
sleep(60);
}
/* We will never reach this point */
}