diff --git a/ui/app/controllers/CControllerHost.php b/ui/app/controllers/CControllerHost.php index fa1ecee8a11..4e1554e594d 100644 --- a/ui/app/controllers/CControllerHost.php +++ b/ui/app/controllers/CControllerHost.php @@ -154,13 +154,17 @@ abstract class CControllerHost extends CController { 'preservekeys' => true ]); - $problems = API::Problem()->get([ - 'output' => ['eventid', 'objectid', 'severity'], - 'objectids' => array_keys($triggers), - 'source' => EVENT_SOURCE_TRIGGERS, - 'object' => EVENT_OBJECT_TRIGGER, - 'suppressed' => ($filter['show_suppressed'] == ZBX_PROBLEM_SUPPRESSED_TRUE) ? null : false - ]); + $problems = []; + foreach (array_chunk($triggers, 5000, true) as $triggers_chunk) { + $problems += API::Problem()->get([ + 'output' => ['eventid', 'objectid', 'severity'], + 'objectids' => array_keys($triggers_chunk), + 'source' => EVENT_SOURCE_TRIGGERS, + 'object' => EVENT_OBJECT_TRIGGER, + 'suppressed' => ($filter['show_suppressed'] == ZBX_PROBLEM_SUPPRESSED_TRUE) ? null : false, + 'preservekeys' => true + ]); + } // Group all problems per host per severity. $host_problems = [];