Failed upgrade to 2.2.4 - solutions?
Hello, I've just tried and failed to upgrade to 2.2.4 from 2.2.2. A python instance starts up and slowly swallows the CPU, ending with 99% of the CPU. A second python instance starts and doesn't do anything naughty. If I issue a ./stop, the second python instance ends properly, but the first continues to consume all CPU resources. I've tried recompiling it several times, reinstalling Python, but no go. It did once start up properly, but as soon as I tried logging into Zope, python took over the CPU. I'm using OpenBSD 2.8, python 1.5.2, x86, 196MB of RAM, GBs of free disk space. I've been using Zope since 2.0 and have never had this much trouble upgrading. the only Zope product I'm using is SiteAccess (the same setup as the old Zope.org before the cluster upgrade). Any ideas? thanks, Luke
On Fri, 8 Dec 2000, Luke Tymowski wrote:
Hello,
I've just tried and failed to upgrade to 2.2.4 from 2.2.2. A python instance starts up and slowly swallows the CPU, ending with 99% of the CPU. A second python instance starts and doesn't do anything naughty.
If I issue a ./stop, the second python instance ends properly, but the first continues to consume all CPU resources.
I've tried recompiling it several times, reinstalling Python, but no go. It did once start up properly, but as soon as I tried logging into Zope, python took over the CPU.
I'm using OpenBSD 2.8, python 1.5.2, x86, 196MB of RAM, GBs of free disk space.
I've been using Zope since 2.0 and have never had this much trouble upgrading. the only Zope product I'm using is SiteAccess (the same setup as the old Zope.org before the cluster upgrade).
Any ideas?
Try turning on the profiler. Quothe the control panel: To enable profiling, restart the Zope process with the environment variable PROFILE_PUBLISHER defined. The value of this variable should be the full system path to a file that will be used to dump a profile report when the process restarts or exits. And kill the process. Maybe this will create a profile report that tells you where it's spinning. Are you sure your waiting long enough? If you have a large Data.fs and you just move it over to a new install, Zope needs to take some time to build the initial database index file. -Michel
Hello
To enable profiling, restart the Zope process with the environment variable PROFILE_PUBLISHER defined. The value of this variable should be the full system path to a file that will be used to dump a profile report when the process restarts or exits.
PROFILE_PUBLISHER='/home/luke/sw/zopeProfile.txt' like so in my z2.py? it didn't do anything. But I can get a python core dump! I tried just a basic install, without my Data.fs. Same result. I tried 2.2.2. Same result. Looks like an incompatibility with OpenBSD 2.8 (I was running 2.7 until 2 weeks ago.) Any ideas? C-compiler or Python incompatibility between what is on OpenBSD 2.8 and Zope? OpenBSD 2.8 comes with Python 1.6. I removed all traces of Python and reinstalled 1.52 from the source. Luke
On Fri, 8 Dec 2000, Luke Tymowski wrote:
Hello
To enable profiling, restart the Zope process with the environment variable PROFILE_PUBLISHER defined. The value of this variable should be the full system path to a file that will be used to dump a profile report when the process restarts or exits.
PROFILE_PUBLISHER='/home/luke/sw/zopeProfile.txt'
like so in my z2.py? it didn't do anything.
Nope, you need to set a process environment variable on your system, not a python variable in your module. You do this before staring Zope, you can do it in a start script (syntax depends on your shell) you can do it from z2.py with os.eviron: http://www.python.org/doc/current/lib/os-procinfo.html Or you can do something like: bash$: export PROFILE_PUBLISHER=/home/luke/sw/zopeProfile.txt bash$: python z2.py -D or something of the like...
But I can get a python core dump!
I tried just a basic install, without my Data.fs. Same result. I tried 2.2.2. Same result.
Looks like an incompatibility with OpenBSD 2.8 (I was running 2.7 until 2 weeks ago.)
Any ideas? C-compiler or Python incompatibility between what is on OpenBSD 2.8 and Zope?
Don't know...
OpenBSD 2.8 comes with Python 1.6. I removed all traces of Python and reinstalled 1.52 from the source.
It's possible you have library missmatch. -Michel
Michel Pelletier wrote:
bash$: export PROFILE_PUBLISHER=/home/luke/sw/zopeProfile.txt bash$: python z2.py -D
Tried that. Nothing written to the text file. But I did get this after doing a control-c ... --- File "z2.py", line 537, in ? Traceback (innermost last): File "z2.py", line 719, in ? asyncore.loop() zdaemon.run(sys.argv, os.path.join(CLIENT_HOME, Zpid)) File "/home/luke/sw/zope224/lib/python/zdaemon.py", line 208, in run p,s = os.waitpid(pid, 0) File "/home/luke/sw/zope224/ZServer/medusa/asyncore.py", line 138, in loop KeyboardInterrupt luke$ poll_fun (timeout, map) File "/home/luke/sw/zope224/ZServer/medusa/asyncore.py", line 66, in poll r,w,e = select.select (r,w,e, timeout) --- With the python 1.5.2 source I did a make test, and it failed on test_fcntl. With the python 2.0 source I did a make test, and Python core dumped on test_poll. I'm guessing, but it looks like Zope on my box has a poll issue.
It's possible you have library missmatch.
Python library or C library? I made pretty certain that I'd removed all traces of Python from the box before reinstalling. /usr/local/bin /usr/local/lib /usr/local/include Luke
participants (2)
-
Luke Tymowski -
Michel Pelletier