On Wed, 10 Mar 2004, Matt Sergeant wrote:

> Interesting. I've recently discovered one weird thing in pperl where 
> pperl tries too hard to become like the calling process, to the point 
> of trying to set $$ to the caller's PID. If you comment out the code 
> where it sets $$ everything starts working again. I have no idea if 
> this will fix what you're doing.
> 
> But it does make me think there might be a call for a pperl that 
> doesn't try quite so hard. Or a flag that says "I don't care about 
> emulation of the caller - just give me the speedup".

But we do want some emulation of the caller don't we? I'm thinking of 
environment in particular.

> Unfortunately debugging pperl is one of the hardest things I've ever 
> had to do in my career.

Is it worth it?

I'm curious as to whether anyone has built a forking server around qpsmtpd
(essentially doing what tcpserver does, but in perl)? I'm aware of the
select server version(*), but would prefer a forking server (say, using
Net::Daemon). That would seem to be able to provide the same speedup as
pperl, but without the headache.  What am I missing?

(*) Here's a patch to remove some incorrect doco:

--- qpsmtpd-server      2 Nov 2003 11:36:01 -0000       1.2
+++ qpsmtpd-server      10 Mar 2004 17:34:45 -0000
@@ -2,9 +2,6 @@
 # Copyright (c) 2001 Ask Bjoern Hansen. See the LICENSE file for details.
 # The "command dispatch" system is taken from colobus - 
http://trainedmonkey.com/colobus/
 #
-# this is designed to be run under tcpserver (http://cr.yp.to/ucspi-tcp.html)
-# or inetd if you're into that sort of thing
-#
 #
 # For more information see http://develooper.com/code/qpsmtpd/
 #



---
Charlie

Reply via email to