X-Git-Url: https://git.mxchange.org/?a=blobdiff_plain;f=include%2Fdbm.php;h=6098dce739feec494587391382643249e39d4b4c;hb=df8b522f6b96bc3a631e608ee430555590e91f0c;hp=f68987c2356d23a016bfdc4a0546c0f1d25d9f37;hpb=f07c96ee5f932a83b571ae8caaa821877d4b75e3;p=friendica.git diff --git a/include/dbm.php b/include/dbm.php index f68987c235..6098dce739 100644 --- a/include/dbm.php +++ b/include/dbm.php @@ -1,18 +1,31 @@ List of processes, separated in their different states + * 'amount' => Number of concurrent database processes + */ public static function processlist() { $r = q("SHOW PROCESSLIST"); $s = array(); + $processes = 0; $states = array(); foreach ($r AS $process) { $state = trim($process["State"]); - if (!in_array($state, array("", "init", "statistics"))) + + // Filter out all non blocking processes + if (!in_array($state, array("", "init", "statistics", "updating"))) { ++$states[$state]; + ++$processes; + } } - // query end - // Sending data - // updating $statelist = ""; foreach ($states AS $state => $usage) { @@ -20,7 +33,21 @@ class dbm { $statelist .= ", "; $statelist .= $state.": ".$usage; } - return($statelist); + return(array("list" => $statelist, "amount" => $processes)); + } + + /** + * Checks if $array is a filled array with at least one entry. + * + * @param $array mixed A filled array with at least one entry + * @return Whether $array is a filled array + */ + public static function is_result($array) { + // It could be a return value from an update statement + if (is_bool($array)) { + return $array; + } + return (is_array($array) && count($array) > 0); } } ?>