Приветствую всех.
Останавливались циклы и ранее (причину так и не понял) если производить какие-то относительно значимые действия с системой. А вот сейчас после нескольких попыток обновить систему (вылетала ошибка с отсутствием достаточных прав на выполнение операций с базой данных, которую подправил) не получается запустить циклы. При выполнении команды php /var/www/html/cycle.php она постоянно зависает на фразе "Removing ThisComputer. (object 7)".
Может будет кто добр и подскажет, куда копнуть? Пробовал выполнять скрипт (взят из cycle.php), где из таблицы properties выбирает все записи с "cycle" в title, но что должно после происходить? Удаление каких-то записей из пары других таблиц. А правильно ли понял работу скрипта?
Команда mysqlcheck останавливается на db_terminal.perfomance_log. Эта таблица пустая.
cycle.php Removing ThisComputer
Модератор: immortal
- xor
- Сообщения: 2039
- Зарегистрирован: Сб ноя 22, 2014 8:45 pm
- Благодарил (а): 286 раз
- Поблагодарили: 629 раз
Re: cycle.php Removing ThisComputer
открываете файл cycle.php и смотритеarivano писал(а): ↑Пн июл 06, 2020 8:39 pmПриветствую всех.
Останавливались циклы и ранее (причину так и не понял) если производить какие-то относительно значимые действия с системой. А вот сейчас после нескольких попыток обновить систему (вылетала ошибка с отсутствием достаточных прав на выполнение операций с базой данных, которую подправил) не получается запустить циклы. При выполнении команды php /var/www/html/cycle.php она постоянно зависает на фразе "Removing ThisComputer. (object 7)".
Может будет кто добр и подскажет, куда копнуть? Пробовал выполнять скрипт (взят из cycle.php), где из таблицы properties выбирает все записи с "cycle" в title, но что должно после происходить? Удаление каких-то записей из пары других таблиц. А правильно ли понял работу скрипта?
Команда mysqlcheck останавливается на db_terminal.perfomance_log. Эта таблица пустая.
Код: Выделить всё
// Removing cycles properties
$qry="1 AND (TITLE LIKE 'cycle%Run' OR TITLE LIKE 'cycle%Control' OR TITLE LIKE 'cycle%Disabled' OR TITLE LIKE 'cycle%AutoRestart')";
$thisCompObject = getObject('ThisComputer');
$cycles_records=SQLSelect("SELECT properties.* FROM properties WHERE $qry ORDER BY TITLE"); //выберем все свойства, которые начинаются с cycle
$total = count($cycles_records);
for ($i = 0; $i < $total; $i++) {
//DebMes("Removing property ThisComputer.$property",'threads');
echo "Removing ThisComputer.$property (object ".$thisCompObject->id.")"; // вот ваша отладочная строка, где $property ещё пусто
$property=$cycles_records[$i]['TITLE']; //а вот тут эта переменная появляется, так что тут всё ок, по-хорошему, эти две строки надо местами поменять для отладки)
... //дальше у вас зависает
- Рейтинг: 1.16%
win10 connect https://connect.smartliving.ru/profile/303
-
- Сообщения: 19
- Зарегистрирован: Пт авг 05, 2016 5:13 pm
- Благодарил (а): 5 раз
- Поблагодарили: 1 раз
Re: cycle.php Removing ThisComputer
Спасибо за помощь!xor писал(а): ↑Пн июл 06, 2020 11:08 pmоткрываете файл cycle.php и смотритеarivano писал(а): ↑Пн июл 06, 2020 8:39 pmПриветствую всех.
Останавливались циклы и ранее (причину так и не понял) если производить какие-то относительно значимые действия с системой. А вот сейчас после нескольких попыток обновить систему (вылетала ошибка с отсутствием достаточных прав на выполнение операций с базой данных, которую подправил) не получается запустить циклы. При выполнении команды php /var/www/html/cycle.php она постоянно зависает на фразе "Removing ThisComputer. (object 7)".
Может будет кто добр и подскажет, куда копнуть? Пробовал выполнять скрипт (взят из cycle.php), где из таблицы properties выбирает все записи с "cycle" в title, но что должно после происходить? Удаление каких-то записей из пары других таблиц. А правильно ли понял работу скрипта?
Команда mysqlcheck останавливается на db_terminal.perfomance_log. Эта таблица пустая.это всё берёт свойства, начинающиеся с cycle из объекта ThisComputer и удаляет их. раскомментируйте все debmes дальше и смотрите в файле логов threads, что там у вас (ну или эхо добавьте)Код: Выделить всё
// Removing cycles properties $qry="1 AND (TITLE LIKE 'cycle%Run' OR TITLE LIKE 'cycle%Control' OR TITLE LIKE 'cycle%Disabled' OR TITLE LIKE 'cycle%AutoRestart')"; $thisCompObject = getObject('ThisComputer'); $cycles_records=SQLSelect("SELECT properties.* FROM properties WHERE $qry ORDER BY TITLE"); //выберем все свойства, которые начинаются с cycle $total = count($cycles_records); for ($i = 0; $i < $total; $i++) { //DebMes("Removing property ThisComputer.$property",'threads'); echo "Removing ThisComputer.$property (object ".$thisCompObject->id.")"; // вот ваша отладочная строка, где $property ещё пусто $property=$cycles_records[$i]['TITLE']; //а вот тут эта переменная появляется, так что тут всё ок, по-хорошему, эти две строки надо местами поменять для отладки) ... //дальше у вас зависает
Что было, так и не разобрался, но всё заработало.
Раскомментировал пару строк, как вы и советовали, удалил пару модулей.