Консоль запущена... обновление до 2.3.1
Имеется сайт — 37 000 товаров. На рево 2.2.15 очистка кэша из админки рабортает. Обновились до 2.3.1. и перестал очишаться кэш из админки. Выводится «Консоль запущена...» и на этом и умирает процесс по таимауту(кнопки отключены):
action system/clearcache
action_map true
media_sources true
menu true
register mgr
topic /clearcache/
PHP 5.4.26 modx revo 2.3.1 с minishop2 2.1.8-pl1 — все плагины отключены. мемори лимит 512М.
кто встречал такую проблему делитесь решением плиз.)
action system/clearcache
action_map true
media_sources true
menu true
register mgr
topic /clearcache/
PHP 5.4.26 modx revo 2.3.1 с minishop2 2.1.8-pl1 — все плагины отключены. мемори лимит 512М.
кто встречал такую проблему делитесь решением плиз.)
Комментарии: 28
Авторизуйтесь или зарегистрируйтесь, чтобы оставлять комментарии.
Ну и вручную удалить /core/cache никогда не помешает.
Ты видишь в логах сервера, что таймаут php, или просто ориентируешься на кнопочки в окошке, которые станут активны только когда придет верный ответ от сервера?
Если в ответе от сервера появился мусор, из-за которого ломается раскодировка JSON, то кнопочки так и будут неактивны.
Fatal error: Maximum execution time of 0 seconds exceeded in /www/core/xpdo/om/mysql/xpdoquery.class.php on line 55
Подозреваю, что он там проверяет статус публикации у 37 000 товаров или что-то в этом духе. Тут только лезть в процессор очистки кэша и дебажить, на каком этапе вылазит проблема.
в методе process от клир кеша зависает на этои строчке.
modSystemClearCacheProcessor
Строка 20: $this->modx->call('modResource', 'refreshURIs', array(&$this->modx));
отут зависает, но не сомг определить потому что через call от xpdo идут и другие запросы и не смог вычислить которыи из них зависает
Не менялся он уже очень давно, так что не знаю, почему в 2.2.15 работает, а в 2.3 виснет.
1- если делаю так в modResource в refreshURIs прямо перед концом функции- перед 400 строкои как ты указал на гите: print_R(«eeeee»);exit; срабатывает и прекращает выполнение.
2. а если так
$this->modx->call('modResource', 'refreshURIs', array(&$this->modx));
print_R(«dddd»);exit;
в modSystemClearCacheProcessor то до print_r не доходит и зависает. в чем может быть проблема??
И нет времени дальше разбираться.
Вот обсуждение зачем они его добавили github.com/modxcms/revolution/issues/9129
Но самое интересное то, что Jason Coward писал, что такие вещи нужно запускать из командной строки на больших сайтах forums.modx.com/thread/85073/how-can-i-recalculate-uri-in-a-large-site-content-with-more-than-1-000-000-entries-without-server-timeout-for-the-script#dis-post-469206 Ну а теперь это при каждой очистке кэша
Прям быстренько так приняли, без обсуждений — молодцы! Видимо, скоро пойдут отзывы от владельцев больших сайтов, и откатят обратно =)
Единственные варианты сейчас это
1. Закомментить эту строчку в процессоре
2. Перевести документы (хотя бы большую часть, например товары) на использование Freeze URI. Эти документы refreshUri не обновляет
3. Оптимизирвать RefreshUri и отправить Pull Request :)
Имею такие глюки на сайтах обновленных до 2.3.1
Есть свежий сайт на 2.3.1 и ресурсов около 3тыщ и все нормально…
я постаивл таим лимит нуль в пхп и max_input time 6000 (дефолт 60) перегруз сервера и был результат минуты через 10. по логам маискюла перегнало за это время около 3 гига трафика мускульного.
Сайт примерно 2т. страниц. Обновился с 2.2.9 до 2.3.2 и поимел проблему с белой висящей консолью. Как исправить?
//$this->modx->call('modResource', 'refreshURIs', array(&$this->modx));
2025-02-10 07:43:08] (ERROR in modMenu::getSubMenus @ /home//public_html/core/model/modx/modmenu.class.php: 154) modAction support is deprecated since version 2.3.0. Support for modAction has been replaced with routing based on a namespace and action name. Please update the extra with the namespace tickets to the routing based system.