[Zope-dev] zopectl start not working on Mac OS X

Jim Roepcke jimr at tyrell.com
Tue Dec 9 18:56:04 EST 2003


We are planning on shipping Zope 2.7 with the Plone 2 installer for Mac  
OS X.

I can start a Zope instance on Mac OS X 10.2.8 using  
$INSTANCE_HOME/bin/runzope, but not using $INSTANCE_HOME/bin/zopectl  
start.

I'm using Python 2.3.2 built from source, and Zope was built using:

./configure  
--with-python=/Applications/Plone2/Library/Software/Zope270/Python/bin/ 
python --prefix=/Applications/Plone2/Library/Software/Zope270/Zope  
--optimize
make
make install

(note, the same thing happens whether or not i use the --optimize  
option)

This happens with b3 and Zope-2_7-branch from today.

cd $INSTANCE_HOME
./bin/zopectl start

> Traceback (most recent call last):
>   File  
> "/Applications/Plone2/Library/Software/Zope270/Zope/lib/python/Zope/ 
> Startup/zopectl.py", line 215, in ?
>     main()
>   File  
> "/Applications/Plone2/Library/Software/Zope270/Zope/lib/python/Zope/ 
> Startup/zopectl.py", line 198, in main
>     c.onecmd(" ".join(options.args))
>   File  
> "/Applications/Plone2/Library/Software/Zope270/Python/lib/python2.3/ 
> cmd.py", line 210, in onecmd
>     return func(arg)
>   File  
> "/Applications/Plone2/Library/Software/Zope270/Zope/lib/python/Zope/ 
> Startup/zopectl.py", line 134, in do_start
>     ZDCmd.do_start(self, arg)
>   File  
> "/Applications/Plone2/Library/Software/Zope270/Zope/lib/python/ 
> zdaemon/zdctl.py", line 214, in do_start
>     os.spawnvp(flag, args[0], args)
>   File  
> "/Applications/Plone2/Library/Software/Zope270/Python/lib/python2.3/ 
> os.py", line 543, in spawnvp
>     return _spawnvef(mode, file, args, None, execvp)
>   File  
> "/Applications/Plone2/Library/Software/Zope270/Python/lib/python2.3/ 
> os.py", line 504, in _spawnvef
>     wpid, sts = waitpid(pid, 0)
> OSError: [Errno 10] No child processes

I added code to zdctl.py to print out the environment and the command  
line used in os.spawnvp.  It is (including some environment variables I  
set before running it):

SOFTWARE_HOME=/Applications/Plone2/Library/Software/Zope270/Zope/lib/ 
python
INSTANCE_HOME=/Applications/Plone2/Sites/Testing
PYTHONPATH=/Applications/Plone2/Library/Software/Zope270/Zope/lib/python
CLIENT_HOME=/Applications/Plone2/Sites/Testing/var
ZOPE_HOME=/Applications/Plone2/Library/Software/Zope270/Zope
export SOFTWARE_HOME INSTANCE_HOME PYTHONPATH CLIENT_HOME ZOPE_HOME

/Applications/Plone2/Library/Software/Zope270/Python/bin/python  
/Applications/Plone2/Library/Software/Zope270/Zope/lib/python/zdaemon/ 
zdrun.py -S  
/Applications/Plone2/Library/Software/Zope270/Zope/lib/python/Zope/ 
Startup/zopeschema.xml -b 10 -d -s  
/Applications/Plone2/Sites/Testing/var/zopectlsock -x 0,2 -z  
/Applications/Plone2/Sites/Testing  
/Applications/Plone2/Sites/Testing/bin/runzope

I get this output:

> Another zrdun is already up using socket  
> '/Applications/Plone2/Sites/Testing/var/zopectlsock':
> status=running
> now=1070998107.721581
> mood=1
> delay=0
> backoff=0
> lasttime=1070998096.551084
> application=1152
> manager=1141
> backofflimit=10
> filename='/Applications/Plone2/Sites/Testing/bin/runzope'
> args=['/Applications/Plone2/Sites/Testing/bin/runzope']

I've looked at the source and nothing is popping out as being obviously  
wrong.  If you have any suggestions for ways I can debug this further I  
can go further on this.

For now I think I'm going to have to stick with runzope... but I'd  
really like to be using zopectl start/stop/status instead.

Jim

--
Jim Roepcke
Tyrell Software Corp  <http://www.tyrell.com/>




More information about the Zope-Dev mailing list