[Zope-dev] Zope (or Python?) not completely thread-safe...?!

Hannu Krosing hannu@tm.ee
Fri, 11 Feb 2000 16:33:10 +0000


Jim Fulton wrote:
> 
>> > ok, one zope thread was waiting for a reply from the smtp-server
> > but as a consequence all other zope threads were blocked in some
> > way so that i couldn't access my zope system anymore.
> >
> > is that a normal behaviour...?!  OS is linux-2.2 ...
> 
> Not in general. Apparently the smtp code is making some call
> that is blocking the interpreter.

From some postings on this list I got an impression that the code for 
sendmail tag is not using smtplib, but does everything itself.

Are there some plans to start using pythons smtplib instead of your own
code ?

This would avoid duplicating effort (and IIRC fix some problems with
Exchange 
server).

> > i would have expected one thread to be waiting and the others to be
> > serving requests as usual...
> 
> Me to. In general, that's the case.  Someone should dig into the
> SMTP code to see where the interpreter is being blocked.

Or just use the patches announced on this list a while ago and test if
the 
problem persists.

> FWIW, I'd like to see SMTP work quite a bit differently.
> First, I'd like to see SMTP sending delayed until transaction commit.

An option to have all tracebacks posted to some address would be also
nice.

Probably can be achieved by embeddind <sendmail ...> in
standard_error_message ?

> Second, I'd like to see sending done asynchronously.  It would be
> nice, when using ZServer, to take advantage of asyncore to send email
> messages.

Could be nice, but would need almost complete rewrite and also make it 
impossible to share effort with main python development for whom medusa
code 
is not very appealing.

-------
Hannu