Re: Apache hangs when searching

2009-04-25 Thread Christian Hammond
I missed this e-mail before. Just going through my inbox now.

This sounds like a common problem people hit with PyLucene. There's a bug in
the latest release (not sure if it's been fixed) where it can deadlock
Apache. I'm not sure what the fix is, or if downgrading will fix it. I think
in the next release, we need to start looking at a simpler (if slower)
search mechanism as an optional replacement for PyLucene.

Christian

-- 
Christian Hammond - chip...@chipx86.com
Review Board - http://www.review-board.org
VMware, Inc. - http://www.vmware.com


On Tue, Apr 7, 2009 at 5:17 AM, Vesterbaek vesterb...@gmail.com wrote:


 Hi,

 My setup:
 ubuntu 8.10
 Reviewboard 1.0 beta2
 apache2
 pylucene 2.4.1 (downloaded source from apache and built)
 python 2.5.2

 Problem:
 When executing a search in the web interface of reviewboard, apache
 hangs/deadlocks, using 100% cpu. Issue 770 seems to be about the same
 problem (http://code.google.com/p/reviewboard/issues/detail?id=770),
 but is has been closed.

 Doing an strace on apache reveals a lot of lines ala the ones below
 here with viewing e.g. viewing a diff (which seems to work fine
 dispite all this):

 #  strace output begin ##
 15981 open(/usr/lib/python2.5/site-packages/django_evolution-0.0.0-
 py2.5.egg/array.py, O_RDONLY|O_LARGEFILE) = -1 ENOENT (No such file
 or directory)
 15981 open(/usr/lib/python2.5/site-packages/django_evolution-0.0.0-
 py2.5.egg/array.pyc, O_RDONLY|O_LARGEFILE) = -1 ENOENT (No such file
 or directory)
 15981 stat64(/usr/lib/python2.5/site-packages/Django-1.0.2_final-
 py2.5.egg/array, 0xb6201f34) = -1 ENOENT (No such file or directory)
 ..
 15981 open(/usr/lib/python2.5/site-packages/ReviewBoard-1.0beta2-
 py2.5.egg/uu.so, O_RDONLY|O_LARGEFILE) = -1 ENOENT (No such file or
 directory)
 15981 open(/usr/lib/python2.5/site-packages/ReviewBoard-1.0beta2-
 py2.5.egg/uumodule.so, O_RDONLY|O_LARGEFILE) = -1 ENOENT (No such
 file or directory)
 15981 open(/usr/lib/python2.5/site-packages/ReviewBoard-1.0beta2-
 py2.5.egg/uu.py, O_RDONLY|O_LARGEFILE) = -1 ENOENT (No such file or
 directory)
 15981 open(/usr/lib/python2.5/site-packages/ReviewBoard-1.0beta2-
 py2.5.egg/uu.pyc, O_RDONLY|O_LARGEFILE) = -1 ENOENT (No such file or
 directory)
 15981 stat64(/usr/lib/python2.5/site-packages/Pygments-1.0-py2.5.egg/
 uu, 0xb61fbd44) = -1 ENOENT (No such file or directory)
 15981 open(/usr/lib/python2.5/site-packages/Pygments-1.0-py2.5.egg/
 uu.so, O_RDONLY|O_LARGEFILE) = -1 ENOENT (No such file or directory)
 15981 open(/usr/lib/python2.5/site-packages/Pygments-1.0-py2.5.egg/
 uumodule.so, O_RDONLY|O_LARGEFILE) = -1 ENOENT (No such file or
 directory)
 15981 open(/usr/lib/python2.5/site-packages/Pygments-1.0-py2.5.egg/
 uu.py, O_RDONLY|O_LARGEFILE) = -1 ENOENT (No such file or directory)
 15981 open(/usr/lib/python2.5/site-packages/Pygments-1.0-py2.5.egg/
 uu.pyc, O_RDONLY|O_LARGEFILE) = -1 ENOENT (No such file or directory)
 15981 stat64(/usr/lib/python2.5/site-packages/Djblets-0.5beta1-
 py2.5.egg/uu, 0xb61fbd44) = -1 ENOENT (No such file or directory)
 15981 open(/usr/lib/python2.5/site-packages/Djblets-0.5beta1-
 py2.5.egg/uu.so, O_RDONLY|O_LARGEFILE) = -1 ENOENT (No such file or
 directory)
 15981 open(/usr/lib/python2.5/site-packages/Djblets-0.5beta1-
 py2.5.egg/uumodule.so, O_RDONLY|O_LARGEFILE) = -1 ENOENT (No such
 file or directory)
 15981 open(/usr/lib/python2.5/site-packages/Djblets-0.5beta1-
 py2.5.egg/uu.py, O_RDONLY|O_LARGEFILE) = -1 ENOENT (No such file or
 directory)
 15981 open(/usr/lib/python2.5/site-packages/Djblets-0.5beta1-
 py2.5.egg/uu.pyc, O_RDONLY|O_LARGEFILE) = -1 ENOENT (No such file or
 directory)
 15981 stat64(/usr/lib/python2.5/site-packages/django_evolution-0.0.0-
 py2.5.egg/uu, 0xb61fbd44) = -1 ENOENT (No such file or directory)
 15981 open(/usr/lib/python2.5/site-packages/django_evolution-0.0.0-
 py2.5.egg/uu.so, O_RDONLY|O_LARGEFILE) = -1 ENOENT (No such file or
 directory)
 15981 open(/usr/lib/python2.5/site-packages/django_evolution-0.0.0-
 py2.5.egg/uumodule.so, O_RDONLY|O_LARGEFILE) = -1 ENOENT (No such
 file or directory)
 #  strace output end ##


 When execute a search, apache2 hangs/deadlocks. strace reveals:

 #  strace output begin ##
 15981 open(/proc/self/maps, O_RDONLY) = 11
 15981 fstat64(11, {st_mode=S_IFREG|0444, st_size=0, ...}) = 0
 15981 mmap2(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|
 MAP_ANONYMOUS, -1, 0) = 0xa9762000
 15981 read(11, 0xa9762000, 1024)= -1 EACCES (Permission
 denied)
 15981 read(11, 0xa9762000, 1024)= -1 EACCES (Permission
 denied)
 15981 read(11, 0xa9762000, 1024)= -1 EACCES (Permission
 denied)
 15981 read(11, 0xa9762000, 1024)= -1 EACCES (Permission
 denied)
 15981 read(11, 0xa9762000, 1024)= -1 EACCES (Permission
 denied)
 15981 read(11, 0xa9762000, 1024)= -1 EACCES (Permission
 denied)
 15981 read(11, 0xa9762000, 1024)= -1 EACCES (Permission
 denied)
 15981 read(11, 0xa9762000, 1024)

Apache hangs when searching

2009-04-07 Thread Vesterbaek

Hi,

My setup:
ubuntu 8.10
Reviewboard 1.0 beta2
apache2
pylucene 2.4.1 (downloaded source from apache and built)
python 2.5.2

Problem:
When executing a search in the web interface of reviewboard, apache
hangs/deadlocks, using 100% cpu. Issue 770 seems to be about the same
problem (http://code.google.com/p/reviewboard/issues/detail?id=770),
but is has been closed.

Doing an strace on apache reveals a lot of lines ala the ones below
here with viewing e.g. viewing a diff (which seems to work fine
dispite all this):

#  strace output begin ##
15981 open(/usr/lib/python2.5/site-packages/django_evolution-0.0.0-
py2.5.egg/array.py, O_RDONLY|O_LARGEFILE) = -1 ENOENT (No such file
or directory)
15981 open(/usr/lib/python2.5/site-packages/django_evolution-0.0.0-
py2.5.egg/array.pyc, O_RDONLY|O_LARGEFILE) = -1 ENOENT (No such file
or directory)
15981 stat64(/usr/lib/python2.5/site-packages/Django-1.0.2_final-
py2.5.egg/array, 0xb6201f34) = -1 ENOENT (No such file or directory)
..
15981 open(/usr/lib/python2.5/site-packages/ReviewBoard-1.0beta2-
py2.5.egg/uu.so, O_RDONLY|O_LARGEFILE) = -1 ENOENT (No such file or
directory)
15981 open(/usr/lib/python2.5/site-packages/ReviewBoard-1.0beta2-
py2.5.egg/uumodule.so, O_RDONLY|O_LARGEFILE) = -1 ENOENT (No such
file or directory)
15981 open(/usr/lib/python2.5/site-packages/ReviewBoard-1.0beta2-
py2.5.egg/uu.py, O_RDONLY|O_LARGEFILE) = -1 ENOENT (No such file or
directory)
15981 open(/usr/lib/python2.5/site-packages/ReviewBoard-1.0beta2-
py2.5.egg/uu.pyc, O_RDONLY|O_LARGEFILE) = -1 ENOENT (No such file or
directory)
15981 stat64(/usr/lib/python2.5/site-packages/Pygments-1.0-py2.5.egg/
uu, 0xb61fbd44) = -1 ENOENT (No such file or directory)
15981 open(/usr/lib/python2.5/site-packages/Pygments-1.0-py2.5.egg/
uu.so, O_RDONLY|O_LARGEFILE) = -1 ENOENT (No such file or directory)
15981 open(/usr/lib/python2.5/site-packages/Pygments-1.0-py2.5.egg/
uumodule.so, O_RDONLY|O_LARGEFILE) = -1 ENOENT (No such file or
directory)
15981 open(/usr/lib/python2.5/site-packages/Pygments-1.0-py2.5.egg/
uu.py, O_RDONLY|O_LARGEFILE) = -1 ENOENT (No such file or directory)
15981 open(/usr/lib/python2.5/site-packages/Pygments-1.0-py2.5.egg/
uu.pyc, O_RDONLY|O_LARGEFILE) = -1 ENOENT (No such file or directory)
15981 stat64(/usr/lib/python2.5/site-packages/Djblets-0.5beta1-
py2.5.egg/uu, 0xb61fbd44) = -1 ENOENT (No such file or directory)
15981 open(/usr/lib/python2.5/site-packages/Djblets-0.5beta1-
py2.5.egg/uu.so, O_RDONLY|O_LARGEFILE) = -1 ENOENT (No such file or
directory)
15981 open(/usr/lib/python2.5/site-packages/Djblets-0.5beta1-
py2.5.egg/uumodule.so, O_RDONLY|O_LARGEFILE) = -1 ENOENT (No such
file or directory)
15981 open(/usr/lib/python2.5/site-packages/Djblets-0.5beta1-
py2.5.egg/uu.py, O_RDONLY|O_LARGEFILE) = -1 ENOENT (No such file or
directory)
15981 open(/usr/lib/python2.5/site-packages/Djblets-0.5beta1-
py2.5.egg/uu.pyc, O_RDONLY|O_LARGEFILE) = -1 ENOENT (No such file or
directory)
15981 stat64(/usr/lib/python2.5/site-packages/django_evolution-0.0.0-
py2.5.egg/uu, 0xb61fbd44) = -1 ENOENT (No such file or directory)
15981 open(/usr/lib/python2.5/site-packages/django_evolution-0.0.0-
py2.5.egg/uu.so, O_RDONLY|O_LARGEFILE) = -1 ENOENT (No such file or
directory)
15981 open(/usr/lib/python2.5/site-packages/django_evolution-0.0.0-
py2.5.egg/uumodule.so, O_RDONLY|O_LARGEFILE) = -1 ENOENT (No such
file or directory)
#  strace output end ##


When execute a search, apache2 hangs/deadlocks. strace reveals:

#  strace output begin ##
15981 open(/proc/self/maps, O_RDONLY) = 11
15981 fstat64(11, {st_mode=S_IFREG|0444, st_size=0, ...}) = 0
15981 mmap2(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|
MAP_ANONYMOUS, -1, 0) = 0xa9762000
15981 read(11, 0xa9762000, 1024)= -1 EACCES (Permission
denied)
15981 read(11, 0xa9762000, 1024)= -1 EACCES (Permission
denied)
15981 read(11, 0xa9762000, 1024)= -1 EACCES (Permission
denied)
15981 read(11, 0xa9762000, 1024)= -1 EACCES (Permission
denied)
15981 read(11, 0xa9762000, 1024)= -1 EACCES (Permission
denied)
15981 read(11, 0xa9762000, 1024)= -1 EACCES (Permission
denied)
15981 read(11, 0xa9762000, 1024)= -1 EACCES (Permission
denied)
15981 read(11, 0xa9762000, 1024)= -1 EACCES (Permission
denied)
15981 read(11, 0xa9762000, 1024)= -1 EACCES (Permission
denied)
15981 read(11, 0xa9762000, 1024)= -1 EACCES (Permission
denied)
15981 read(11, 0xa9762000, 1024)= -1 EACCES (Permission
denied)
15981 read(11, 0xa9762000, 1024)= -1 EACCES (Permission
denied)
15981 read(11, 0xa9762000, 1024)= -1 EACCES (Permission
denied)
15981 read(11, 0xa9762000, 1024)= -1 EACCES (Permission
denied)
15981 read(11, 0xa9762000, 1024)= -1 EACCES (Permission
denied)
#  strace output end ##

The read - permission denied lines are repeated forever until apache
is shut down.

Any ideas to what my problem might be?

Thanks
 -- Jeppe