2010-12-16 2 views
2

Мои правила цен в каталоге неизменно терпят неудачу.Magento Каталог Прайс-листы

Они не сработали с тех пор, как 1.4.1. Я обновился до 1.4.2, потому что некоторые люди говорили, что он исправлен, к сожалению, для меня это не так.

Cron работает. Монитор заданий Cron сообщает о запланированных и успешно выполняемых задачах. Все, кроме правил цены каталога. Что с этим связано?

Я поставил свою систему -> Cron настройки на:

Generate schedules every: 60 
Schedule ahead for: 1 
Missed if not run within: 60 
History cleanup every: 120 
Success history lifetime: 120 
Failure history lifetime: 120 

Update # 1. Я смотрю на свой файл cronmonitor.php, и я вижу, что catalogrule_apply_all находится на рассмотрении с 1AM. Я также вижу много вакансий, которые были упущены.

Обновление № 2. В 2am catalogrule_apply_all исчез из cronmonitor, и я думаю, что история была очищена, поэтому я не вижу ничего под пропущенным. Я почти уверен, что это было пропущено.

Итак, как я могу предотвратить его пропущение?

+0

возможно, что ваша БД не завершает или не блокирует таблицы и не достигает взаимоблокировок, проверьте свои журналы исключений и журнал mysql, чтобы узнать, является ли это проблемой – 2010-12-16 07:48:43

ответ

1

Ну, после дальнейшего копания и расследования моя проблема, наконец, ПОСТАНОВИЛА!

Оказывается, что после обновления до 1.4.2 у меня все еще были некоторые измененные файлы правил каталога 1.4.1 в моей локальной папке магов, которые препятствовали правильному запуску правил. Я удалил их.

После этого, я также должен был установить свои графики Cron в Configuration> Система для:

Generate Schedules Every: 1 
Schedule Ahead for: 15 
Missed if Not Run Within: 120 
History Cleanup Every: 1440 
Success History Lifetime: 1440 
Failure History Lifetime: 1440 

Последние три установлены на 1440 минут, так что я могу видеть полные 24 часа в моем хрон мониторе.

Теперь о проблеме с базой Google.

2

Я бы рекомендовал вам настроить вашу любимую установку IDE для отладки, а затем позвоните cron.php из своего веб-браузера и выполните код. Вы можете вручную вставить записи в таблицу cron_schedule в базу данных, чтобы заставить cron выполнить конкретный cronjob, такой как catalogrule_apply_all. Установите точку останова внутри Mage_CatalogRule_Model_Observer::dailyCatalogUpdate($observe) и проследите ее.

Это должно позволить вам изолировать проблему и (надеюсь) решить.

Смежные вопросы