unset($db_host, $db_user, $db_pass, $db_data);
};
+ $max_processes = get_config('system', 'max_processes_backend');
+ if (intval($max_processes) == 0)
+ $max_processes = 5;
+
$processlist = dbm::processlist();
if ($processlist["list"] != "") {
- logger("Processes: ".$processlist["amount"]." - Processlist: ".$processlist["list"], LOGGER_DEBUG);
- if ($processlist["amount"] > 5)
+ logger("Processcheck: Processes: ".$processlist["amount"]." - Processlist: ".$processlist["list"], LOGGER_DEBUG);
+
+ if ($processlist["amount"] > $max_processes) {
+ logger("Processcheck: Maximum number of processes for backend tasks (".$max_processes.") reached.", LOGGER_DEBUG);
return;
+ }
}
if (poller_max_connections_reached())
// Log the type of database processes
$processlist = dbm::processlist();
if ($processlist["amount"] != "") {
- logger("Processes: ".$processlist["amount"]." - Processlist: ".$processlist["list"], LOGGER_DEBUG);
- if ($processlist["amount"] > 5)
+ logger("Processcheck: Processes: ".$processlist["amount"]." - Processlist: ".$processlist["list"], LOGGER_DEBUG);
+
+ if ($processlist["amount"] > $max_processes) {
+ logger("Processcheck: Maximum number of processes for backend tasks (".$max_processes.") reached.", LOGGER_DEBUG);
return;
+ }
}
// Constantly check the number of available database connections to let the frontend be accessible at any time
function poller_kill_stale_workers() {
$r = q("SELECT `pid`, `executed` FROM `workerqueue` WHERE `executed` != '0000-00-00 00:00:00'");
- if (!is_array($r) || count($r) == 0) {
+ if (!dba::is_result($r)) {
// No processing here needed
return;
}