var/замки всегда пусты


Я действительно вижу папку var/locks в своей установке Magento. Но он всегда пуст - даже во время работы индексатора.

Я предполагаю, что это вызовет проблему, если индексатор сработает более одного раза, правильно ли это?

Но я не могу понять, почему он всегда остается пустым.

  1. значение параметра var/locks равно 777 [drwxrwxrwx]
  2. var/блокировки будут принадлежать одному и тому же пользователю var/журналов (и это работает)
  3. все индексы завершены успешно
  4. Ничего связанного в файлах журналов
  5. Версия Magento 1.9.2.0

Я ценю любой намек и дополнительную информацию. Спасибо.

Редактировать: Если я собираюсь перезаписать модуль индексатора одним из версий 1.8, он работает так, как и ожидалось - будет использоваться папка var/locks. Итак, похоже, что Magento изменил способ использования var/блокировок? Кто-нибудь знает об этом больше?

Спасибо!

Author: Stefan, 2016-01-12

1 answers

Механизм блокировки действительно изменился и, похоже, теперь находится в бд по умолчанию.

В версии 1.8 это выглядело так: https://github.com/bragento/magento-core/blob/1.8/app/code/core/Mage/Index/Model/Process.php#L454

В 1.9 механизм блокировки был изменен и обработан собственной моделью: https://github.com/bragento/magento-core/blob/1.9/app/code/core/Mage/Index/Model/Process.php#L458

Все еще кажется возможным установить для данных use_file_lock значение верно, но поскольку здесь это не сделано, я предполагаю, что теперь по умолчанию используется db.

Https://github.com/bragento/magento-core/blob/1.9/app/code/core/Mage/Index/Model/Lock.php#L128

Если посмотреть на модель блокировки, то по умолчанию также используется блокировка бд.

 1
Author: David Verholen, 2016-02-06 10:23:29