Uploaded image for project: 'ZABBIX BUGS AND ISSUES'
  2. ZBX-6840

"Undefined index" and "Invalid argument supplied" in maps.inc.php


      Undefined index: 10086 [include/maps.inc.php:1145]
      Invalid argument supplied for foreach() [include/maps.inc.php:1145]

      The similar problem was fixed in pre-2.1.0 r32718 under ZBX-6096.

      How to reproduce:

      • create 2 hosts with a trigger that uses items from these hosts
      • create a map with a host (only one host should be on the map)
      • go to Monitoring -> Maps

      regression, broken by:

      r36359 | tomtom | 2013-06-14 11:46:30 +0300 (Fri, 14 Jun 2013) | 10 lines
      Changed paths:
      M /branches/2.0
      M /branches/2.0/ChangeLog
      M /branches/2.0/frontends/php/api/classes/CTrigger.php
      M /branches/2.0/frontends/php/include/db.inc.php

      A......... ZBX-6603
      fixed performance for dbConditionInt() function:
      changed array iteration to foreach loop so array would not be copied;
      replaced array_merge() function by more appropriate functionality, which lead to a performance boost from 25s to 17s on one my setup.

      added sorting for groups so it would work correctly with dbConditionInt(), which I think gave some performance boost as well;
      removed group, host and item adding within data formatting, which doesn't work as intended with optimized customFetch() method, now groups, items and hosts are added same way as setting selectHosts, for example;
      previous fixed problem that if trigger belongs to several groups, it is shown only in one in system_status widget;
      wrote custom SQL to retrieve all lastEvents in single query, this should be extended to support 'output' parameter, now all fields are returned;
      left debug messages to, so optimizing could be improved on some other slower parts.

            Unassigned Unassigned
            sasha Alexander Vladishev
            2 Vote for this issue
            6 Start watching this issue