Hi Nick,

The point is that linux has a different thread system then other platforms.  Under standard UNIX (hpux, sgi, etc.), you have the possibility to create a thread. When creating one or more threads, you will have:
1 process with one or more threads sharing the same environment  (such as uid, etc.). In this case, when changing a env. var. this will
be available in both threads.

But, when creating a thread in linux you will have:
for each thread one process (you can see this with ps -ef|grep python).   In this case, when changing a env.var. this will give a problem, because the other thread still have the old uid.

Zope is starting as root.  Zope initializes its products (create a thread) as root, and then changes to user "nobody"  
(or to user <....>given by -u ....  (in the startup).

So, the thread does have another uid, and this is giving the problem!

I just change my: rczope:
 
su wwwrun -c "$zope_start 2>/dev/null"

because in my start script, I call:
          exec /usr/local/zope/bin/python $PYTHONHOME/z2.py -u wwwrun -a 127.0.0.1 "$@"

You might need to chown the files in your zope directory.

I did try to run the Xron product and everything is working correctly now.

Enjoy it !.

Els
 

Nicholas Lo wrote:

Hi Els,

Sorry for I couldnt give you the code in time. BTW, what are your tricks in
making Xron working under Linux??? If Xron works under Linux, I can throw
away my old code and follow the Xron way.

-- Nick

----- Original Message -----
From: "Homan Els" <[EMAIL PROTECTED]>
To: "Nicholas Lo" <[EMAIL PROTECTED]>
Sent: Monday, May 28, 2001 6:47 PM
Subject: [Fwd: [Zope-dev] Xron on linux: Dispatcher thread stops after a
while]

> Hi Nicholas,
>
> It is working !
> (I will now try to test to correctness of the product).
>
> See email from Xron on linux.
>
> Regards,
>
> Els
>
>
>

Reply via email to