Ошибка DataBaseLock с Django, Xapian и Haystack

Я индексирую модель с помощью xapian/haystack. Когда я тестирую его на моей локальной машине, все работает просто отлично, но когда я пытаюсь сохранить модель на сервере, Xapian выдает ошибку DatabaseLockError

Exception Type: DatabaseLockError
Exception Location: /opt/python2.6/lib/python2.6/site-packages/xapian.py in __init__, line 2886

2886: _xapian.WritableDatabase_swiginit(self,_xapian.new_WritableDatabase(*args))

Я прочитал кое-что на официальном сайте стога сена django об очереди. Это путь, и если да, то как мне это реализовать?

1 ответ

Решение

Кажется, не существует "мгновенного" решения этой проблемы одновременной записи xapian. Поэтому я буду запускать cronjob по индексированию все 24 часа и извлекать новые вещи с помощью SQL-запроса, где я получаю только набор данных, где updated_on >= now - 24h, и объединяю их с результатами xapian.

Другие вопросы по тегам