[Zope] Zope request lockup on ZEO setup

Paul Winkler pw_lists@slinkp.com
Thu, 19 Jun 2003 06:04:14 -0400

On Thu, Jun 19, 2003 at 09:57:56AM +0200, Stefan Bund wrote:
> There is one notable difference: The development setup is running
> on port 8080, the new setup must run on port 80. Therefore, our
> development setup is started as user zope (using su) whereas the new
> setup is started as user root with the -u zope options.

aha. i've recently had problems there too.

> I really cannot fathom the reason for the observer behavior:
>   o started as zope with su and ZEO: working
>   o started as root with -u zope and ZEO: *NOT* working

this is exactly the behavior i observe too, with zope 2.6.1.
I think -u is broken.

> And to reiterate: Not working means, that python just wont start the
> additional service threads: start_new_thread is called successfully in
> ../ZRendezvous.py but the new thread never starts executing the code
> from ../ZServerPublisher.py. 

I didn't trace it that far, but I think we're seeing the same behavior.
I did notice that when starting with -u zope
and ZEO, zope gets as far as to log the startup messages including the
server ports, and then it appears to never finish responding to
any requests.  i tried connecting via ftp and i get the server ID
message (medusa experimental blah blah), but i can't ever get
a directory listing.  I tried a few straces and there did seem to
be some threading weirdness going on.

> So: I think I'll have to delve into pound as proxy, but I really would
> like an explanation for this behavior ... I don't get it ...

another alternative, which we used as a workaround on linux:
use iptables to do port forwarding. 
This doesn't work for local requests (e.g. http://localhost:80 will fail),
it only forwards requests from other hosts.
we're successfully using iptables to make ftp connections to zope
on port 21. Now we can use privileged ports without starting zope
as root.


Paul Winkler
(random hero from isometric.spaceninja.com)