Jared Johnson wrote:
So perhaps Data::Dumper is having some trouble handling our data structure? We get the same error trying to operating on $transaction alone or $self alone.

Try setting

        $Data::Dumper::Purity = 1;

(use the POD, Luke...;-)

My questions right now -- anybody got another reccomendation for a module as handy as Data::Dumper?

YAML or YAML::Syck will both serialize data structures (though you have to learn to read what they write).

You can, if you so choose, run qpsmtpd under the Perl debugger. If you are using DJB's daemontools, the following will work:

exec /usr/local/bin/softlimit -m 25000000 \
  /usr/local/bin/tcpserver -c 10 -v -R -p \
  `head -1 config/IP` 2525 \
  perl -dT ./qpsmtpd

Just put

        $DB::single = 1;

where you'd like the debugger to halt execution and examine the various data structures yourself. You can't do this in any mode other than immediate (i.e. you can't easily test forkserver), but this goes a long way towards understanding the internals...

HTH

John

Reply via email to