2013-11-25 2 views
2

plone에 이상한 문제가 있습니다. zcatalog를 지우고 재구성하면 Zope 클라이언트가 잠시 후 종료됩니다. 오류 없음.Zcatalog clear 및 rebuild가 오류없이 plone 클라이언트를 종료합니다.

저는 ZMI (zeo + zeoclient, 독립형)를 사용하고 'zinstance debug'를 사용하여 프로세스를 수행했습니다. 클라이언트가 자동으로 종료하는 것과 같은 결과입니다.

우분투 서버 12.04 상자에 일부 애드온 제품이있는 표준 Plone 4.3을 사용하고 있습니다.

작업 내가 성공하지 않고, 문제를 찾기 위해 수행 한 : 나는 파일 시스템에 대한 사용 권한을 확인했습니다

  • .
  • Plone 4.3을 다시 설치했습니다.
  • 데이터베이스 포장은 정상적으로 작동하지만 문제는 계속됩니다.
  • 파일 시스템의 사용 가능한 inode를 확인했습니다.
  • 다른 컴퓨터에서 프로세스를 성공적으로 실행합니다.
  • fg 매개 변수를 사용하여 클라이언트를 실행하면 종료 할 때 메시지가 표시되지 않습니다.
  • db를 백업하고 복원하십시오. 복원 후 동일한 결과가 있지만 다른 컴퓨터에서 복원하는 경우 프로세스가 카탈로그를 다시 작성합니다 (동일한 Plone 버전 및 추가 기능 사용).
  • 카탈로그의 인덱스를 다시 색인하면 동일한 실패 (메시지없이 종료)가 발생합니다.
  • ZODB/scripts/fstest.py는 오류를 표시하지 않습니다.
  • ZODB/scripts/fsrefs.py는 오류를 표시하지 않습니다.

실마리가 있습니까?

+4

너무 많은 메모리를 사용하여 Zope 프로세스가 커널에 의해 삭제 된 것 같습니다. 커널 로그에서 오류를 확인하십시오. –

+0

+1 어떤 Python 버전을 사용하고 있습니까? – hvelarde

답변

2

데이비드, 당신 말이 맞아요, 어제 문제가 발견되었지만, 너무 늦었 어 (피곤해서) 여기에보고했습니다.

이 plone 인스턴스는 512MB의 VPS (OpenVZ)에 설치되며 메모리가없는 경우 커널이 python 프로세스를 자동 종료합니다.

내 마지막 테스트 중 하나는 "로그 진행률"을 사용하여 카탈로그를 다시 작성하는 것이 었습니다. 거기서 프로세스가 다른 지점에서 종료되었지만 모두 약 30 %였습니다. 그런 다음 우연히 dmesg와 "voila"를 실행하여 미스터리를 해결했습니다. 모양 :

[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}