Hi I'm trying to debug a persistent error that we've had for a long time, but
has now become acute.

We always "use strict" and do extensive testing, but this problem has eluded
us so far.

Every now and again (4 or 5 times per day) a process would error with a
Windows Error 26 generating a Windows Error Reporting Popup on a terminal
server console. The user data and process looks like it has completed
without any error at the Perl and DB level: it's only the garbage collection
that's showing an error.

In the past this wasn't so bad, as the Apache2 process died and could be
restarted and no harm was done. Now that the code has been moved from a real
to a virtual server (which is allegedly identical but clearly isn't) the
httpd.exe process is hanging awaiting user input to confirm the error popup
window before terminating.

We have searched high and low and tried all sorts of registry hacks.

We've also written more watchdog code to regularly fetch pages from the
server and if they time out to call taskkill to recycle the process, which
although it works, isn't ideal.

Question 1) Does anyone have a reliable way of ignoring this Windows popup
error and letting the httpd.exe process terminate silently so that our
standard process watchdog can restart it?


We have also been looking at the output of a crash dump that we triggered
manually with MS userdump.exe. We already have symbols files for Apache2,
other modiles and mod_perl installed. The error is occurring during a string
copy during the general destructor process of mod_perl after our code has
successfully completed. 

Although the Windows error is clearly being triggered by mod_perl, we
suspect that the root cause lies much deeper and is probably something to do
with win32::OLE and not being thread safe.

We can't find any symbols files for perl itself.

Question 2) Can anyone tell us how to reliably dump trace information at the
perl level so we can trace precisely which perl program (and hopefully which
subroutine or method) is triggering the problem?

Again we've searched high and low for a perl58.pdb and perl.pdb symbol table
for the Activestate Perl build but we cannot find one anywhere. Would this
mean we have to recompile our own custom Perl kernel to get this info? If so
that would be a real pain,as then we would have altered something on the
core system.

So can anyone point me at a ready built version of symbol tables
(perl58.pdb) for Activestate Perl Win32?

If you have any other constructive tips for how to dig into this further,
please share.

Thanks
-- 
View this message in context: 
http://old.nabble.com/Help-Debugging-Windows-Server-2003-Win32-%2B-Apache2.2-%2B-mod_perl-%2B-Activestate-Pelr-5.8.8-ErrorID-26-tp32004421p32004421.html
Sent from the mod_perl - General mailing list archive at Nabble.com.

Reply via email to