Очистка и перестроение Zcatalog завершает работу клиента Plone без каких-либо ошибок

У меня странная проблема с одним из моих plone: ​​когда я очищаю и перестраиваю zcatalog, клиент zope через некоторое время молча закрывается. Нет ошибок.

Я выполнил процесс, используя ZMI (zeo + zeoclient, автономный) и используя «отладку zinstance». Тот же результат, клиент молча завершает работу.

Я использую стандартный Plone 4.3 с некоторыми дополнительными продуктами на сервере Ubuntu 12.04.

Задачи, которые я сделал, чтобы выяснить проблему, но безуспешно:

  • Я проверил права доступа к файловой системе.
  • Я переустановил Plone 4.3.
  • Упаковка базы данных работает нормально, но проблема остается.
  • Проверил свободные иноды в файловой системе.
  • Выполнение процесса на другом компьютере работает успешно.
  • Выполнение клиента с параметром fg, никаких сообщений при выходе.
  • Резервное копирование БД и восстановление. Тот же результат после восстановления, но при восстановлении на другом компьютере каталог перестраивается (с той же версией Plone и надстройками).
  • Переиндексация индекса каталога вызывает ту же ошибку: выход без сообщений.
  • ZODB/scripts/fstest.py не показывает ошибок.
  • ZODB/scripts/fsrefs.py не показывает ошибок.

Любые подсказки?


person oggers    schedule 25.11.2013    source источник
comment
Я предполагаю, что ядро ​​убивает процесс Zope за использование слишком большого объема памяти. Проверьте журнал ядра на наличие ошибок.   -  person David Glick    schedule 26.11.2013
comment
+1 какую версию Python вы используете?   -  person hvelarde    schedule 26.11.2013


Ответы (1)


Дэвид, вы правы, я только вчера обнаружил проблему, но было слишком поздно (я устал), чтобы сообщить о ней здесь.

Этот экземпляр plone установлен на VPS (OpenVZ) с 512 МБ, и ядро ​​молча отключило процесс python, когда не было свободной памяти.

Одним из моих последних тестов было перестроение каталога с включенным «журналом прогресса», там я показываю, что процесс завершался в разные моменты, но всего около 30%. Затем случайно запустил dmesg, и "вуаля", загадка разрешилась, смотрите:

[2233907.698115] Out of memory in UB: OOM killed process 17819 (python) score 0 vm:799612kB, rss:497324kB, swap:45480kB
[2235168.564053] Out of memory in UB: OOM killed process 445 (python) score 0 vm:790380kB, rss:498036kB, swap:46924kB
[2236752.744927] Out of memory in UB: OOM killed process 17964 (python) score 0 vm:790392kB, rss:494232kB, swap:45584kB
[2237461.280724] Out of memory in UB: OOM killed process 26584 (python) score 0 vm:790328kB, rss:497932kB, swap:45940kB
[2238443.104334] Out of memory in UB: OOM killed process 1216 (python) score 0 vm:799512kB, rss:494132kB, swap:44632kB
[2239457.938721] Out of memory in UB: OOM killed process 12821 (python) score 0 vm:794896kB, rss:502000kB, swap:42656kB}
person oggers    schedule 26.11.2013