|
|
@ -131,21 +131,28 @@ function poller_max_connections_reached() { |
|
|
|
return false; |
|
|
|
|
|
|
|
// Fetch the max value from the config. This is needed when the system cannot detect the correct value by itself.
|
|
|
|
// In that case we use the processlist to determine the current number of connections
|
|
|
|
$max = get_config("system", "max_connections"); |
|
|
|
|
|
|
|
if ($max == 0) { |
|
|
|
$max = intval($r[0]["Value"]); |
|
|
|
if ($max == 0) |
|
|
|
return false; |
|
|
|
} |
|
|
|
|
|
|
|
$r = q("SHOW STATUS WHERE `variable_name` = 'Threads_connected'"); |
|
|
|
if (!$r) |
|
|
|
return false; |
|
|
|
$r = q("SHOW STATUS WHERE `variable_name` = 'Threads_connected'"); |
|
|
|
if (!$r) |
|
|
|
return false; |
|
|
|
|
|
|
|
$connected = intval($r[0]["Value"]); |
|
|
|
if ($connected == 0) |
|
|
|
return false; |
|
|
|
$connected = intval($r[0]["Value"]); |
|
|
|
if ($connected == 0) |
|
|
|
return false; |
|
|
|
} else { |
|
|
|
$r = q("SHOW PROCESSLIST"); |
|
|
|
if (!$r) |
|
|
|
return false; |
|
|
|
|
|
|
|
$connected = count($r); |
|
|
|
} |
|
|
|
|
|
|
|
$level = $connected / $max; |
|
|
|
|
|
|
|