Re: Ошибки/проблемы/неисправности системы
Добавлено: Вт июн 20, 2017 11:26 am
нашел.
methods
methods
clearTimeout вроде как давно уже не используется, setTimeOut сбрасывает и перезапускает одноименный таймер.ARTik писал(а):Задолбала уже эта ошибка
16:34:06 0.29850000 Error executing job bl_dev_update_timer_10s (51088740): <br />
<b>Fatal error</b>: Cannot redeclare cmp() (previously declared in C:\_majordomo\htdocs\modules\objects\objects.class.php(534) : eval()'d code:13) in <b>C:\_majordomo\htdocs\modules\objects\objects.class.php(534) : eval()'d code</b> on line <b>19</b><br /> (C:\_majordomo\htdocs\lib\common.class.php)
Вот сценарий на который постоянная ругань.
clearTimeout("bl_dev_update_timer_10s");
callMethod('S1_Main.requestStatus');
callMethod('S1_Main.requestDefence');
callMethod('S1_Main.requestAlarm');
setTimeOut("bl_dev_update_timer_10s","runScript('Broadlink Devices Update 10s');",10);
Причем раньше этой ошибки небыло, обновился на свою голову...
Что выполняется в "Broadlink Devices Update 10s" ? Система ругается на повтороне переопределиние функции cmp в коде.ARTik писал(а):Задолбала уже эта ошибка
16:34:06 0.29850000 Error executing job bl_dev_update_timer_10s (51088740): <br />
<b>Fatal error</b>: Cannot redeclare cmp() (previously declared in C:\_majordomo\htdocs\modules\objects\objects.class.php(534) : eval()'d code:13) in <b>C:\_majordomo\htdocs\modules\objects\objects.class.php(534) : eval()'d code</b> on line <b>19</b><br /> (C:\_majordomo\htdocs\lib\common.class.php)
Вот сценарий на который постоянная ругань.
clearTimeout("bl_dev_update_timer_10s");
callMethod('S1_Main.requestStatus');
callMethod('S1_Main.requestDefence');
callMethod('S1_Main.requestAlarm');
setTimeOut("bl_dev_update_timer_10s","runScript('Broadlink Devices Update 10s');",10);
Причем раньше этой ошибки небыло, обновился на свою голову...
а код его можно посмотреть?ARTik писал(а):Сценарий (Broadlink Devices Update 10s) который запускает сам себя в минутном методе.
Ошибка не в этом, а в том, что в теле цикла переопределяется граница перебора массива.xneo писал(а):Нашлась еще одна ошибка в цикле ping (вернее в модуле от этого цикла). В файле var/www/modules/pinghosts/pinghosts.class.php
...
в функции checkAllHosts (186 строка) есть запрос из базы и после него формирование цикла for. Так вот он выполняется лишний раз каждый раз т.к. это цикл с постусловием.
...
Код: Выделить всё
$tmp=explode("\n", $host['LOG']);
$total=count($tmp);
if ($total > 30) {
$tmp=array_slice($tmp, 0, 30);
$host['LOG']=implode("\n", $tmp);
}
а в методах requestStatus, requestDefence и requestAlarm не задаётся функция cmp?ARTik писал(а):Вот его код.
clearTimeout("bl_dev_update_timer_10s");
callMethod('S1_Main.requestStatus');
callMethod('S1_Main.requestDefence');
callMethod('S1_Main.requestAlarm');
setTimeOut("bl_dev_update_timer_10s","runScript('Broadlink Devices Update 10s');",10);