Login | Register For Free | Help
Search for: (Advanced)

Mailing List Archive: ModPerl: ModPerl

Help Debugging Windows Server 2003 Win32 + Apache2.2 + mod_perl + Activestate Pelr 5.8.8 ErrorID 26

 

 

ModPerl modperl RSS feed   Index | Next | Previous | View Threaded


Test at globis

Jul 6, 2011, 5:14 AM

Post #1 of 10 (1223 views)
Permalink
Help Debugging Windows Server 2003 Win32 + Apache2.2 + mod_perl + Activestate Pelr 5.8.8 ErrorID 26

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.


aw at ice-sa

Jul 6, 2011, 5:55 AM

Post #2 of 10 (1186 views)
Permalink
Re: Help Debugging Windows Server 2003 Win32 + Apache2.2 + mod_perl + Activestate Pelr 5.8.8 ErrorID 26 [In reply to]

Q1 : are you running Apache as a Windows Service ?
Q2 : if yes, in the Service properties, is the "allow service to interact with the
desktop" checkbox checked ?
Q3 : still if yes, under what user-id ? is it "Local System", or another local user, or a
domain user ?
Q4 : for such an error, there should be some message in the Windows Event Logs.
What does it say there ?


HappyPerlUser wrote:
> 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


Test at globis

Jul 6, 2011, 6:24 AM

Post #3 of 10 (1201 views)
Permalink
Re: Help Debugging Windows Server 2003 Win32 + Apache2.2 + mod_perl + Activestate Pelr 5.8.8 ErrorID 26 [In reply to]

Thanks. Answers below.


awarnier wrote:
>
> Q1 : are you running Apache as a Windows Service ?
> Q2 : if yes, in the Service properties, is the "allow service to interact
> with the
> desktop" checkbox checked ?
> Q3 : still if yes, under what user-id ? is it "Local System", or another
> local user, or a
> domain user ?
> Q4 : for such an error, there should be some message in the Windows Event
> Logs.
> What does it say there ?
>
>
A1. Yes Apache 2.2 running as a service
Apache/2.2.19 (Win32) mod_auth_sspi/1.0.4 mod_perl/2.0.4 Perl/v5.8.8

A2. yes. interactive checkbox is checked

A3. Local System account

A4. Exact text is
The instruction at "0x2808625d" referenced memory at "0x13715268". The
memory could not be "read".
Click on OK to terminate the program

The instruction is usually the same, although sometimes it is "0x2802627f"
The referenced memory changes every time.


http://old.nabble.com/file/p32004847/httpd-error.png

Further stack debug that we have below:

0:999> .reload;!analyze -v;r;kv;lmnt;.logclose
................................................................
................
Loading unloaded module list
................
*** WARNING: Unable to verify checksum for perl58.dll
*** ERROR: Symbol file could not be found. Defaulted to export symbols for
perl58.dll -
*** WARNING: Unable to verify checksum for mod_perl.so
*** ERROR: Symbol file could not be found. Defaulted to export symbols for
mod_perl.so -
*******************************************************************************
*
*
* Exception Analysis
*
*
*
*******************************************************************************

*** WARNING: Unable to verify checksum for libapr-1.dll
*** WARNING: Unable to verify checksum for libhttpd.dll
*** WARNING: Unable to verify checksum for httpd.exe
*** WARNING: Unable to verify checksum for libaprutil-1.dll
GetPageUrlData failed, server returned HTTP status 404
URL requested:
http://watson.microsoft.com/StageOne/httpd_exe/2_2_19_0/perl58_dll/5_8_8_822/0008627f.htm?Retriage=1

FAULTING_IP:
perl58!Perl_my_strlcpy+91f
2808627f 83250000000000 and dword ptr ds:[0],0

EXCEPTION_RECORD: ffffffff -- (.exr 0xffffffffffffffff)
.exr 0xffffffffffffffff
ExceptionAddress: 2808627f (perl58!Perl_my_strlcpy+0x0000091f)
ExceptionCode: c0000005 (Access violation)
ExceptionFlags: 00000000
NumberParameters: 2
Parameter[0]: 00000001
Parameter[1]: 00000000
Attempt to write to address 00000000

DEFAULT_BUCKET_ID: NULL_POINTER_WRITE

PROCESS_NAME: httpd.exe

ERROR_CODE: (NTSTATUS) 0xc0000005 - The instruction at "0x%08lx" referenced
memory at "0x%08lx". The memory could not be "%s".

EXCEPTION_CODE: (NTSTATUS) 0xc0000005 - The instruction at "0x%08lx"
referenced memory at "0x%08lx". The memory could not be "%s".

EXCEPTION_PARAMETER1: 00000001

EXCEPTION_PARAMETER2: 00000000

WRITE_ADDRESS: 00000000

FOLLOWUP_IP:
perl58!Perl_my_strlcpy+91f
2808627f 83250000000000 and dword ptr ds:[0],0

MOD_LIST: <ANALYSIS/>

NTGLOBALFLAG: 0

APPLICATION_VERIFIER_FLAGS: 0

FAULTING_THREAD: 00002814

PRIMARY_PROBLEM_CLASS: NULL_POINTER_WRITE

BUGCHECK_STR: APPLICATION_FAULT_NULL_POINTER_WRITE

LAST_CONTROL_TRANSFER: from 1000ada9 to 2808627f

STACK_TEXT:
WARNING: Stack unwind information not available. Following frames may be
wrong.
10b5fe68 1000ada9 00d360f4 145ce478 00c46da8 perl58!Perl_my_strlcpy+0x91f
10b5fe80 10001d3b 00d360f4 00d360f4 00d360f4
mod_perl!modperl_perl_destruct+0x5f
10b5fe98 10001dc6 00c46da8 1000268b 00bdeed0
mod_perl!modperl_interp_destroy+0x1f
10b5fea0 1000268b 00bdeed0 00bdeec0 00c46da8
mod_perl!modperl_interp_pool_destroy+0x47
10b5febc 100025a4 00bdeed0 00e8e7e0 00c46da8
mod_perl!modperl_tipool_putback_data+0xfa
10b5ff00 6eec7fdb 01046b18 01046b48 0105d0d0
mod_perl!modperl_tipool_putback_data+0x13
10b5ff24 6ff0aa33 01046b08 00000001 00bdeb2c libapr_1!apr_pool_destroy+0x3b
10b5ff3c 6ff04d61 0105d0d0 0105d0d0 0105d0d0
libhttpd!ap_process_http_connection+0x83
10b5ff54 6ff05023 0105d0d0 008d3550 10b5ff84
libhttpd!ap_run_process_connection+0x21
10b5ff64 6ff1da2c 0105d0d0 00eeb568 00000000
libhttpd!ap_process_connection+0x33
10b5ff84 77bcb530 0105d0c8 00000000 00000000 libhttpd!worker_main+0x9c
10b5ffb8 77e6482f 00e9e5b8 00000000 00000000 msvcrt!_endthreadex+0xa3
10b5ffec 00000000 77bcb4bc 00e9e5b8 00000000 kernel32!BaseThreadStart+0x34


SYMBOL_STACK_INDEX: 0

SYMBOL_NAME: perl58!Perl_my_strlcpy+91f

FOLLOWUP_NAME: MachineOwner

MODULE_NAME: perl58

IMAGE_NAME: perl58.dll

DEBUG_FLR_IMAGE_TIMESTAMP: 46aff16d

STACK_COMMAND: dt ntdll!LdrpLastDllInitializer BaseDllName ; dt
ntdll!LdrpFailureData ; ~999s; .ecxr ; kb

FAILURE_BUCKET_ID: NULL_POINTER_WRITE_c0000005_perl58.dll!Perl_my_strlcpy

BUCKET_ID: APPLICATION_FAULT_NULL_POINTER_WRITE_perl58!Perl_my_strlcpy+91f

WATSON_STAGEONE_URL:
http://watson.microsoft.com/StageOne/httpd_exe/2_2_19_0/4dd6eda8/perl58_dll/5_8_8_822/46aff16d/c0000005/0008627f.htm?Retriage=1

Followup: MachineOwner
---------

eax=00000000 ebx=12ba03b8 ecx=00d3d7e8 edx=00d3d7e8 esi=12bccff8
edi=00d96de0
eip=2808627f esp=10b5fdb4 ebp=10b5fe68 iopl=0 nv up ei pl nz na pe
nc
cs=001b ss=0023 ds=0023 es=0023 fs=003b gs=0000
efl=00010206
perl58!Perl_my_strlcpy+0x91f:
2808627f 83250000000000 and dword ptr ds:[0],0
ds:0023:00000000=????????
ChildEBP RetAddr Args to Child
WARNING: Stack unwind information not available. Following frames may be
wrong.
10b5fe68 1000ada9 00d360f4 145ce478 00c46da8 perl58!Perl_my_strlcpy+0x91f
10b5fe80 10001d3b 00d360f4 00d360f4 00d360f4
mod_perl!modperl_perl_destruct+0x5f
10b5fe98 10001dc6 00c46da8 1000268b 00bdeed0
mod_perl!modperl_interp_destroy+0x1f
10b5fea0 1000268b 00bdeed0 00bdeec0 00c46da8
mod_perl!modperl_interp_pool_destroy+0x47
10b5febc 100025a4 00bdeed0 00e8e7e0 00c46da8
mod_perl!modperl_tipool_putback_data+0xfa
10b5ff00 6eec7fdb 01046b18 01046b48 0105d0d0
mod_perl!modperl_tipool_putback_data+0x13
10b5ff24 6ff0aa33 01046b08 00000001 00bdeb2c libapr_1!apr_pool_destroy+0x3b
(CONV: stdcall)
10b5ff3c 6ff04d61 0105d0d0 0105d0d0 0105d0d0
libhttpd!ap_process_http_connection+0x83 (CONV: cdecl)
10b5ff54 6ff05023 0105d0d0 008d3550 10b5ff84
libhttpd!ap_run_process_connection+0x21 (CONV: stdcall)
10b5ff64 6ff1da2c 0105d0d0 00eeb568 00000000
libhttpd!ap_process_connection+0x33 (CONV: stdcall)
10b5ff84 77bcb530 0105d0c8 00000000 00000000 libhttpd!worker_main+0x9c
(CONV: stdcall)
10b5ffb8 77e6482f 00e9e5b8 00000000 00000000 msvcrt!_endthreadex+0xa3 (FPO:
[Non-Fpo])
10b5ffec 00000000 77bcb4bc 00e9e5b8 00000000 kernel32!BaseThreadStart+0x34
(FPO: [Non-Fpo])
start end module name
003c0000 003c7000 mod_auth_sspi mod_auth_sspi.so Wed May 17 20:19:58 2006
(446B694E)
003e0000 003e5000 Cwd Cwd.dll Wed Aug 01 04:35:58 2007
(46AFF18E)
003f0000 003f5000 Const Const.dll Fri Aug 22 03:14:08 2008
(48AE12E0)
00400000 00405000 httpd httpd.exe Sat May 21 00:39:36 2011
(4DD6EDA8)
00ca0000 00ca7000 Connection Connection.dll Fri Aug 22 03:12:18 2008
(48AE1272)
00cb0000 00cb6000 ServerUtil ServerUtil.dll Fri Aug 22 03:13:21 2008
(48AE12B1)
00cc0000 00cc8000 RequestUtil RequestUtil.dll Fri Aug 22 03:13:09 2008
(48AE12A5)
00cd0000 00cd5000 Util Util.dll Fri Aug 22 03:13:47 2008
(48AE12CB)
10000000 1001f000 mod_perl mod_perl.so Fri Aug 22 03:03:26 2008
(48AE105E)
11430000 11436000 Response Response.dll Fri Aug 22 03:13:13 2008
(48AE12A9)
11440000 1144a000 RequestRec RequestRec.dll Fri Aug 22 03:13:04 2008
(48AE12A0)
11450000 11457000 RequestIO RequestIO.dll Fri Aug 22 03:13:00 2008
(48AE129C)
11460000 11466000 Log Log.dll Fri Aug 22 03:12:43 2008
(48AE128B)
11470000 11476000 Access Access.dll Fri Aug 22 03:11:37 2008
(48AE1249)
11480000 11487000 Table Table.dll Fri Aug 22 03:09:48 2008
(48AE11DC)
11490000 11495000 Status Status.dll Fri Aug 22 03:09:23 2008
(48AE11C3)
114a0000 114a5000 Global Global.dll Fri Aug 22 03:13:43 2008
(48AE12C7)
114b0000 114c7000 DBI DBI.dll Wed Mar 05 06:55:04 2008
(47CE35B8)
114d0000 114d7000 Util_114d0000 Util.dll Wed Aug 01 04:38:45 2007
(46AFF235)
114e0000 114e6000 Pool Pool.dll Fri Aug 22 03:08:39 2008
(48AE1197)
114f0000 11504000 Calc Calc.dll Tue Mar 14 01:16:51 2006
(44160B73)
11510000 11516000 HiRes HiRes.dll Tue Jan 06 00:08:34 2009
(496292F2)
11520000 11526000 Fcntl Fcntl.dll Wed Aug 01 04:38:15 2007
(46AFF217)
11530000 11543000 POSIX POSIX.dll Wed Aug 01 04:39:04 2007
(46AFF248)
11550000 1155a000 Win32 Win32.dll Wed Aug 01 04:40:19 2007
(46AFF293)
11560000 11566000 Service Service.dll Wed Aug 01 05:07:46 2007
(46AFF902)
11570000 11575000 perlchartdir58mt perlchartdir58mt.dll Mon Jan 14
16:52:00 2008 (478B8520)
11580000 117b5000 chartdir chartdir.dll Sat Mar 28 16:59:31 2009
(49CE4963)
118d0000 118d5000 Base64 Base64.dll Tue Jul 01 02:46:41 2008
(48697E71)
118e0000 118e6000 MD5 MD5.dll Wed Aug 01 04:36:30 2007
(46AFF1AE)
118f0000 118f7000 Socket Socket.dll Wed Aug 01 04:39:35 2007
(46AFF267)
11900000 11905000 Hostname Hostname.dll Wed Aug 01 04:39:47 2007
(46AFF273)
11910000 11916000 IO IO.dll Wed Aug 01 04:38:39 2007
(46AFF22F)
11920000 11946000 Registry Registry.dll Wed Aug 01 05:06:09 2007
(46AFF8A1)
12950000 12964000 WinError WinError.dll Wed Aug 01 05:08:04 2007
(46AFF914)
12970000 12ace000 mysql mysql.dll Thu Apr 19 05:37:28 2007
(4626E3F8)
12ad0000 12ad5000 Util_12ad0000 Util.dll Fri Aug 22 03:11:16 2008
(48AE1234)
12ae0000 12ae5000 Error Error.dll Fri Aug 22 03:07:33 2008
(48AE1155)
28000000 280c5000 perl58 perl58.dll Wed Aug 01 04:35:25 2007
(46AFF16D)
5a4c0000 5a4d3000 zlib1 zlib1.dll Mon Mar 15 02:51:58 2010
(4B9D92BE)
5f270000 5f2ca000 hnetcfg hnetcfg.dll Sat Feb 17 14:59:38 2007
(45D70A4A)
68000000 68035000 rsaenh rsaenh.dll Sat Feb 17 06:49:58 2007
(45D69786)
6ee50000 6ee59000 libapriconv_1 libapriconv-1.dll Sat May 21 00:38:31 2011
(4DD6ED67)
6ee60000 6ee90000 libaprutil_1 libaprutil-1.dll Sat May 21 00:39:22 2011
(4DD6ED9A)
6eec0000 6eee3000 libapr_1 libapr-1.dll Sat May 21 00:38:29 2011
(4DD6ED65)
6fb00000 6fb06000 mod_authz_host mod_authz_host.so Sat May 21 00:39:43
2011 (4DD6EDAF)
6fba0000 6fba7000 mod_deflate mod_deflate.so Sat May 21 00:39:52 2011
(4DD6EDB8)
6fc00000 6fc06000 mod_setenvif mod_setenvif.so Sat May 21 00:40:06 2011
(4DD6EDC6)
6fc20000 6fc27000 mod_mime mod_mime.so Sat May 21 00:39:57 2011
(4DD6EDBD)
6fc30000 6fc37000 mod_log_config mod_log_config.so Sat May 21 00:39:58
2011 (4DD6EDBE)
6fc60000 6fc67000 mod_imagemap mod_imagemap.so Sat May 21 00:40:01 2011
(4DD6EDC1)
6fc80000 6fc86000 mod_dir mod_dir.so Sat May 21 00:40:00 2011
(4DD6EDC0)
6fc90000 6fc97000 mod_cgi mod_cgi.so Sat May 21 00:39:56 2011
(4DD6EDBC)
6fcd0000 6fcd6000 mod_alias mod_alias.so Sat May 21 00:39:59 2011
(4DD6EDBF)
6ff00000 6ff46000 libhttpd libhttpd.dll Sat May 21 00:39:36 2011
(4DD6EDA8)
71ae0000 71ae8000 wshtcpip wshtcpip.dll Sat Feb 17 15:02:27 2007
(45D70AF3)
71b20000 71b61000 mswsock mswsock.dll Fri Jun 20 20:32:38 2008
(485BF7C6)
71bb0000 71bb9000 wsock32 wsock32.dll Tue Mar 25 10:43:26 2003
(3E8024BE)
71bf0000 71bf8000 ws2help ws2help.dll Sat Feb 17 15:02:18 2007
(45D70AEA)
71c00000 71c17000 ws2_32 ws2_32.dll Sat Feb 17 15:02:17 2007
(45D70AE9)
71f60000 71f64000 security security.dll Tue Mar 25 10:43:24 2003
(3E8024BC)
76290000 762ad000 imm32 imm32.dll Sat Feb 17 14:59:59 2007
(45D70A5F)
76b70000 76b7b000 psapi psapi.dll Sat Feb 17 15:01:25 2007
(45D70AB5)
76ed0000 76efa000 dnsapi dnsapi.dll Thu Mar 03 08:06:05 2011
(4D6F3DDD)
76f10000 76f3e000 wldap32 wldap32.dll Sat Feb 17 15:01:57 2007
(45D70AD5)
76f50000 76f63000 secur32 secur32.dll Wed Feb 04 12:41:02 2009
(49897ECE)
76f70000 76f77000 winrnr winrnr.dll Sat Feb 17 15:01:43 2007
(45D70AC7)
76f80000 76f85000 rasadhlp rasadhlp.dll Sat Feb 17 15:01:01 2007
(45D70A9D)
77380000 77411000 user32 user32.dll Fri Mar 02 07:38:46 2007
(45E7C676)
77420000 77523000 comctl32 comctl32.dll Tue Sep 07 14:08:31 2010
(4C862B3F)
77670000 777a9000 ole32 ole32.dll Mon Jul 26 12:01:18 2010
(4C4D5CEE)
77b90000 77b98000 version version.dll Sat Feb 17 15:01:44 2007
(45D70AC8)
77ba0000 77bfa000 msvcrt msvcrt.dll Sat Feb 17 15:02:46 2007
(45D70B06)
77c00000 77c49000 gdi32 gdi32.dll Thu Oct 23 13:43:54 2008
(4900637A)
77c50000 77cf0000 rpcrt4 rpcrt4.dll Wed Aug 18 11:27:25 2010
(4C6BA77D)
77e40000 77f42000 kernel32 kernel32.dll Sat Mar 21 18:08:26 2009
(49C51F0A)
7c800000 7c8c3000 ntdll ntdll.dll Fri Oct 22 14:27:14 2010
(4CC18322)
7c8d0000 7d0cf000 shell32 shell32.dll Fri Jan 21 22:59:50 2011
(4D3A01D6)
7d180000 7d1d2000 shlwapi shlwapi.dll Thu Oct 15 22:19:54 2009
(4AD783EA)
7d1e0000 7d27c000 advapi32 advapi32.dll Mon Feb 09 12:02:55 2009
(49900D5F)

Unloaded modules:
5a4c0000 5a4d3000 zlib1.dll
Timestamp: Mon Mar 15 02:51:58 2010 (4B9D92BE)
Checksum: 00000000
ImageSize: 00013000
6fba0000 6fba7000 mod_deflate.so
Timestamp: Sat May 21 00:39:52 2011 (4DD6EDB8)
Checksum: 00000000
ImageSize: 00007000
6fcd0000 6fcd6000 mod_alias.so
Timestamp: Sat May 21 00:39:59 2011 (4DD6EDBF)
Checksum: 00000000
ImageSize: 00006000
6fb00000 6fb06000 mod_authz_host.so
Timestamp: Sat May 21 00:39:43 2011 (4DD6EDAF)
Checksum: 00000000
ImageSize: 00006000
6fc90000 6fc97000 mod_cgi.so
Timestamp: Sat May 21 00:39:56 2011 (4DD6EDBC)
Checksum: 00000000
ImageSize: 00007000
6fc80000 6fc86000 mod_dir.so
Timestamp: Sat May 21 00:40:00 2011 (4DD6EDC0)
Checksum: 00000000
ImageSize: 00006000
6fc60000 6fc67000 mod_imagemap.so
Timestamp: Sat May 21 00:40:01 2011 (4DD6EDC1)
Checksum: 00000000
ImageSize: 00007000
6fc30000 6fc37000 mod_log_config.so
Timestamp: Sat May 21 00:39:58 2011 (4DD6EDBE)
Checksum: 00000000
ImageSize: 00007000
6fc20000 6fc27000 mod_mime.so
Timestamp: Sat May 21 00:39:57 2011 (4DD6EDBD)
Checksum: 00000000
ImageSize: 00007000
6fc00000 6fc06000 mod_setenvif.so
Timestamp: Sat May 21 00:40:06 2011 (4DD6EDC6)
Checksum: 00000000
ImageSize: 00006000
28000000 280c5000 perl58.dll
Timestamp: Wed Aug 01 04:35:25 2007 (46AFF16D)
Checksum: 00000000
ImageSize: 000C5000
10000000 1001f000 mod_perl.so
Timestamp: Fri Aug 22 03:03:26 2008 (48AE105E)
Checksum: 00000000
ImageSize: 0001F000
77670000 777a9000 ole32.dll
Timestamp: Mon Jul 26 12:01:18 2010 (4C4D5CEE)
Checksum: 0013CFD9
ImageSize: 00139000
003c0000 003c7000 mod_auth_sspi.so
Timestamp: Wed May 17 20:19:58 2006 (446B694E)
Checksum: 00009E3B
ImageSize: 00007000
71f60000 71f64000 SECURITY.DLL
Timestamp: Tue Mar 25 10:43:24 2003 (3E8024BC)
Checksum: 0000FD45
ImageSize: 00004000
00cd0000 00cd5000 Util.dll
Timestamp: Fri Aug 22 03:13:47 2008 (48AE12CB)
Checksum: 00000000
ImageSize: 00005000
Closing open log file c:\debuglog.txt
--
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-tp32004421p32004847.html
Sent from the mod_perl - General mailing list archive at Nabble.com.


aw at ice-sa

Jul 6, 2011, 8:04 AM

Post #4 of 10 (1200 views)
Permalink
Re: Help Debugging Windows Server 2003 Win32 + Apache2.2 + mod_perl + Activestate Pelr 5.8.8 ErrorID 26 [In reply to]

HappyPerlUser wrote:
> Thanks. Answers below.
>
>
> awarnier wrote:
>> Q1 : are you running Apache as a Windows Service ?
>> Q2 : if yes, in the Service properties, is the "allow service to interact
>> with the
>> desktop" checkbox checked ?
>> Q3 : still if yes, under what user-id ? is it "Local System", or another
>> local user, or a
>> domain user ?
>> Q4 : for such an error, there should be some message in the Windows Event
>> Logs.
>> What does it say there ?
>>
>>
> A1. Yes Apache 2.2 running as a service
> Apache/2.2.19 (Win32) mod_auth_sspi/1.0.4 mod_perl/2.0.4 Perl/v5.8.8
>
> A2. yes. interactive checkbox is checked

That is why you get this error box.
Have you tried unchecking that option ?
(I'm not saying that it will solve the underlying problem, but it may remove the annoying
symptom).

On a separate note : since you are running this on virtual machines, you may want to try
running Apache in a command window, from the command-line. There may be error messages
appearing then (the ones written to STDERR by perl e.g.), which otherwise you would not
get to see.
Since it is a virtual machine, you can leave the command window open, and do not need to
log off. You can just connect and disconnect from the virtual console as needed.
Be aware that if you do that, you will be running Apache under the user-id under which you
are currently logged-in on the server, so watch file permissions etc..


>
> A3. Local System account

That's interesting, considering you are logged-in as LocalSystem, which is not a domain
account. mod_auth_sspi is to do Windows domain authentication, isn't it ?
I am curious to know how that works when the server is not running as a domain account.
(But this has probably nothing to do with the issue at hand).

>
> A4. Exact text is
> The instruction at "0x2808625d" referenced memory at "0x13715268". The
> memory could not be "read".
> Click on OK to terminate the program
>
> The instruction is usually the same, although sometimes it is "0x2802627f"
> The referenced memory changes every time.
>
>
> http://old.nabble.com/file/p32004847/httpd-error.png
>
> Further stack debug that we have below:
>
> 0:999> .reload;!analyze -v;r;kv;lmnt;.logclose
> ................................................................
> ................
> Loading unloaded module list
> ................
> *** WARNING: Unable to verify checksum for perl58.dll
> *** ERROR: Symbol file could not be found. Defaulted to export symbols for
> perl58.dll -
> *** WARNING: Unable to verify checksum for mod_perl.so
> *** ERROR: Symbol file could not be found. Defaulted to export symbols for
> mod_perl.so -
> *******************************************************************************
> *
> *
> * Exception Analysis
> *
> *
> *
> *******************************************************************************
>
> *** WARNING: Unable to verify checksum for libapr-1.dll
> *** WARNING: Unable to verify checksum for libhttpd.dll
> *** WARNING: Unable to verify checksum for httpd.exe
> *** WARNING: Unable to verify checksum for libaprutil-1.dll
> GetPageUrlData failed, server returned HTTP status 404
> URL requested:
> http://watson.microsoft.com/StageOne/httpd_exe/2_2_19_0/perl58_dll/5_8_8_822/0008627f.htm?Retriage=1
>
> FAULTING_IP:
> perl58!Perl_my_strlcpy+91f
> 2808627f 83250000000000 and dword ptr ds:[0],0
>
> EXCEPTION_RECORD: ffffffff -- (.exr 0xffffffffffffffff)
> .exr 0xffffffffffffffff
> ExceptionAddress: 2808627f (perl58!Perl_my_strlcpy+0x0000091f)
> ExceptionCode: c0000005 (Access violation)
> ExceptionFlags: 00000000
> NumberParameters: 2
> Parameter[0]: 00000001
> Parameter[1]: 00000000
> Attempt to write to address 00000000
>
> DEFAULT_BUCKET_ID: NULL_POINTER_WRITE
>
> PROCESS_NAME: httpd.exe
>
> ERROR_CODE: (NTSTATUS) 0xc0000005 - The instruction at "0x%08lx" referenced
> memory at "0x%08lx". The memory could not be "%s".
>
> EXCEPTION_CODE: (NTSTATUS) 0xc0000005 - The instruction at "0x%08lx"
> referenced memory at "0x%08lx". The memory could not be "%s".
>
> EXCEPTION_PARAMETER1: 00000001
>
> EXCEPTION_PARAMETER2: 00000000
>
> WRITE_ADDRESS: 00000000
>
> FOLLOWUP_IP:
> perl58!Perl_my_strlcpy+91f
> 2808627f 83250000000000 and dword ptr ds:[0],0
>
> MOD_LIST: <ANALYSIS/>
>
> NTGLOBALFLAG: 0
>
> APPLICATION_VERIFIER_FLAGS: 0
>
> FAULTING_THREAD: 00002814
>
> PRIMARY_PROBLEM_CLASS: NULL_POINTER_WRITE
>
> BUGCHECK_STR: APPLICATION_FAULT_NULL_POINTER_WRITE
>
> LAST_CONTROL_TRANSFER: from 1000ada9 to 2808627f
>
> STACK_TEXT:
> WARNING: Stack unwind information not available. Following frames may be
> wrong.
> 10b5fe68 1000ada9 00d360f4 145ce478 00c46da8 perl58!Perl_my_strlcpy+0x91f
> 10b5fe80 10001d3b 00d360f4 00d360f4 00d360f4
> mod_perl!modperl_perl_destruct+0x5f
> 10b5fe98 10001dc6 00c46da8 1000268b 00bdeed0
> mod_perl!modperl_interp_destroy+0x1f
> 10b5fea0 1000268b 00bdeed0 00bdeec0 00c46da8
> mod_perl!modperl_interp_pool_destroy+0x47
> 10b5febc 100025a4 00bdeed0 00e8e7e0 00c46da8
> mod_perl!modperl_tipool_putback_data+0xfa
> 10b5ff00 6eec7fdb 01046b18 01046b48 0105d0d0
> mod_perl!modperl_tipool_putback_data+0x13
> 10b5ff24 6ff0aa33 01046b08 00000001 00bdeb2c libapr_1!apr_pool_destroy+0x3b
> 10b5ff3c 6ff04d61 0105d0d0 0105d0d0 0105d0d0
> libhttpd!ap_process_http_connection+0x83
> 10b5ff54 6ff05023 0105d0d0 008d3550 10b5ff84
> libhttpd!ap_run_process_connection+0x21
> 10b5ff64 6ff1da2c 0105d0d0 00eeb568 00000000
> libhttpd!ap_process_connection+0x33
> 10b5ff84 77bcb530 0105d0c8 00000000 00000000 libhttpd!worker_main+0x9c
> 10b5ffb8 77e6482f 00e9e5b8 00000000 00000000 msvcrt!_endthreadex+0xa3
> 10b5ffec 00000000 77bcb4bc 00e9e5b8 00000000 kernel32!BaseThreadStart+0x34
>
>
> SYMBOL_STACK_INDEX: 0
>
> SYMBOL_NAME: perl58!Perl_my_strlcpy+91f
>
> FOLLOWUP_NAME: MachineOwner
>
> MODULE_NAME: perl58
>
> IMAGE_NAME: perl58.dll
>
> DEBUG_FLR_IMAGE_TIMESTAMP: 46aff16d
>
> STACK_COMMAND: dt ntdll!LdrpLastDllInitializer BaseDllName ; dt
> ntdll!LdrpFailureData ; ~999s; .ecxr ; kb
>
> FAILURE_BUCKET_ID: NULL_POINTER_WRITE_c0000005_perl58.dll!Perl_my_strlcpy
>
> BUCKET_ID: APPLICATION_FAULT_NULL_POINTER_WRITE_perl58!Perl_my_strlcpy+91f
>
> WATSON_STAGEONE_URL:
> http://watson.microsoft.com/StageOne/httpd_exe/2_2_19_0/4dd6eda8/perl58_dll/5_8_8_822/46aff16d/c0000005/0008627f.htm?Retriage=1
>
> Followup: MachineOwner
> ---------
>
> eax=00000000 ebx=12ba03b8 ecx=00d3d7e8 edx=00d3d7e8 esi=12bccff8
> edi=00d96de0
> eip=2808627f esp=10b5fdb4 ebp=10b5fe68 iopl=0 nv up ei pl nz na pe
> nc
> cs=001b ss=0023 ds=0023 es=0023 fs=003b gs=0000
> efl=00010206
> perl58!Perl_my_strlcpy+0x91f:
> 2808627f 83250000000000 and dword ptr ds:[0],0
> ds:0023:00000000=????????
> ChildEBP RetAddr Args to Child
> WARNING: Stack unwind information not available. Following frames may be
> wrong.
> 10b5fe68 1000ada9 00d360f4 145ce478 00c46da8 perl58!Perl_my_strlcpy+0x91f
> 10b5fe80 10001d3b 00d360f4 00d360f4 00d360f4
> mod_perl!modperl_perl_destruct+0x5f
> 10b5fe98 10001dc6 00c46da8 1000268b 00bdeed0
> mod_perl!modperl_interp_destroy+0x1f
> 10b5fea0 1000268b 00bdeed0 00bdeec0 00c46da8
> mod_perl!modperl_interp_pool_destroy+0x47
> 10b5febc 100025a4 00bdeed0 00e8e7e0 00c46da8
> mod_perl!modperl_tipool_putback_data+0xfa
> 10b5ff00 6eec7fdb 01046b18 01046b48 0105d0d0
> mod_perl!modperl_tipool_putback_data+0x13
> 10b5ff24 6ff0aa33 01046b08 00000001 00bdeb2c libapr_1!apr_pool_destroy+0x3b
> (CONV: stdcall)
> 10b5ff3c 6ff04d61 0105d0d0 0105d0d0 0105d0d0
> libhttpd!ap_process_http_connection+0x83 (CONV: cdecl)
> 10b5ff54 6ff05023 0105d0d0 008d3550 10b5ff84
> libhttpd!ap_run_process_connection+0x21 (CONV: stdcall)
> 10b5ff64 6ff1da2c 0105d0d0 00eeb568 00000000
> libhttpd!ap_process_connection+0x33 (CONV: stdcall)
> 10b5ff84 77bcb530 0105d0c8 00000000 00000000 libhttpd!worker_main+0x9c
> (CONV: stdcall)
> 10b5ffb8 77e6482f 00e9e5b8 00000000 00000000 msvcrt!_endthreadex+0xa3 (FPO:
> [Non-Fpo])
> 10b5ffec 00000000 77bcb4bc 00e9e5b8 00000000 kernel32!BaseThreadStart+0x34
> (FPO: [Non-Fpo])
> start end module name
> 003c0000 003c7000 mod_auth_sspi mod_auth_sspi.so Wed May 17 20:19:58 2006
> (446B694E)
> 003e0000 003e5000 Cwd Cwd.dll Wed Aug 01 04:35:58 2007
> (46AFF18E)
> 003f0000 003f5000 Const Const.dll Fri Aug 22 03:14:08 2008
> (48AE12E0)
> 00400000 00405000 httpd httpd.exe Sat May 21 00:39:36 2011
> (4DD6EDA8)
> 00ca0000 00ca7000 Connection Connection.dll Fri Aug 22 03:12:18 2008
> (48AE1272)
> 00cb0000 00cb6000 ServerUtil ServerUtil.dll Fri Aug 22 03:13:21 2008
> (48AE12B1)
> 00cc0000 00cc8000 RequestUtil RequestUtil.dll Fri Aug 22 03:13:09 2008
> (48AE12A5)
> 00cd0000 00cd5000 Util Util.dll Fri Aug 22 03:13:47 2008
> (48AE12CB)
> 10000000 1001f000 mod_perl mod_perl.so Fri Aug 22 03:03:26 2008
> (48AE105E)
> 11430000 11436000 Response Response.dll Fri Aug 22 03:13:13 2008
> (48AE12A9)
> 11440000 1144a000 RequestRec RequestRec.dll Fri Aug 22 03:13:04 2008
> (48AE12A0)
> 11450000 11457000 RequestIO RequestIO.dll Fri Aug 22 03:13:00 2008
> (48AE129C)
> 11460000 11466000 Log Log.dll Fri Aug 22 03:12:43 2008
> (48AE128B)
> 11470000 11476000 Access Access.dll Fri Aug 22 03:11:37 2008
> (48AE1249)
> 11480000 11487000 Table Table.dll Fri Aug 22 03:09:48 2008
> (48AE11DC)
> 11490000 11495000 Status Status.dll Fri Aug 22 03:09:23 2008
> (48AE11C3)
> 114a0000 114a5000 Global Global.dll Fri Aug 22 03:13:43 2008
> (48AE12C7)
> 114b0000 114c7000 DBI DBI.dll Wed Mar 05 06:55:04 2008
> (47CE35B8)
> 114d0000 114d7000 Util_114d0000 Util.dll Wed Aug 01 04:38:45 2007
> (46AFF235)
> 114e0000 114e6000 Pool Pool.dll Fri Aug 22 03:08:39 2008
> (48AE1197)
> 114f0000 11504000 Calc Calc.dll Tue Mar 14 01:16:51 2006
> (44160B73)
> 11510000 11516000 HiRes HiRes.dll Tue Jan 06 00:08:34 2009
> (496292F2)
> 11520000 11526000 Fcntl Fcntl.dll Wed Aug 01 04:38:15 2007
> (46AFF217)
> 11530000 11543000 POSIX POSIX.dll Wed Aug 01 04:39:04 2007
> (46AFF248)
> 11550000 1155a000 Win32 Win32.dll Wed Aug 01 04:40:19 2007
> (46AFF293)
> 11560000 11566000 Service Service.dll Wed Aug 01 05:07:46 2007
> (46AFF902)
> 11570000 11575000 perlchartdir58mt perlchartdir58mt.dll Mon Jan 14
> 16:52:00 2008 (478B8520)
> 11580000 117b5000 chartdir chartdir.dll Sat Mar 28 16:59:31 2009
> (49CE4963)
> 118d0000 118d5000 Base64 Base64.dll Tue Jul 01 02:46:41 2008
> (48697E71)
> 118e0000 118e6000 MD5 MD5.dll Wed Aug 01 04:36:30 2007
> (46AFF1AE)
> 118f0000 118f7000 Socket Socket.dll Wed Aug 01 04:39:35 2007
> (46AFF267)
> 11900000 11905000 Hostname Hostname.dll Wed Aug 01 04:39:47 2007
> (46AFF273)
> 11910000 11916000 IO IO.dll Wed Aug 01 04:38:39 2007
> (46AFF22F)
> 11920000 11946000 Registry Registry.dll Wed Aug 01 05:06:09 2007
> (46AFF8A1)
> 12950000 12964000 WinError WinError.dll Wed Aug 01 05:08:04 2007
> (46AFF914)
> 12970000 12ace000 mysql mysql.dll Thu Apr 19 05:37:28 2007
> (4626E3F8)
> 12ad0000 12ad5000 Util_12ad0000 Util.dll Fri Aug 22 03:11:16 2008
> (48AE1234)
> 12ae0000 12ae5000 Error Error.dll Fri Aug 22 03:07:33 2008
> (48AE1155)
> 28000000 280c5000 perl58 perl58.dll Wed Aug 01 04:35:25 2007
> (46AFF16D)
> 5a4c0000 5a4d3000 zlib1 zlib1.dll Mon Mar 15 02:51:58 2010
> (4B9D92BE)
> 5f270000 5f2ca000 hnetcfg hnetcfg.dll Sat Feb 17 14:59:38 2007
> (45D70A4A)
> 68000000 68035000 rsaenh rsaenh.dll Sat Feb 17 06:49:58 2007
> (45D69786)
> 6ee50000 6ee59000 libapriconv_1 libapriconv-1.dll Sat May 21 00:38:31 2011
> (4DD6ED67)
> 6ee60000 6ee90000 libaprutil_1 libaprutil-1.dll Sat May 21 00:39:22 2011
> (4DD6ED9A)
> 6eec0000 6eee3000 libapr_1 libapr-1.dll Sat May 21 00:38:29 2011
> (4DD6ED65)
> 6fb00000 6fb06000 mod_authz_host mod_authz_host.so Sat May 21 00:39:43
> 2011 (4DD6EDAF)
> 6fba0000 6fba7000 mod_deflate mod_deflate.so Sat May 21 00:39:52 2011
> (4DD6EDB8)
> 6fc00000 6fc06000 mod_setenvif mod_setenvif.so Sat May 21 00:40:06 2011
> (4DD6EDC6)
> 6fc20000 6fc27000 mod_mime mod_mime.so Sat May 21 00:39:57 2011
> (4DD6EDBD)
> 6fc30000 6fc37000 mod_log_config mod_log_config.so Sat May 21 00:39:58
> 2011 (4DD6EDBE)
> 6fc60000 6fc67000 mod_imagemap mod_imagemap.so Sat May 21 00:40:01 2011
> (4DD6EDC1)
> 6fc80000 6fc86000 mod_dir mod_dir.so Sat May 21 00:40:00 2011
> (4DD6EDC0)
> 6fc90000 6fc97000 mod_cgi mod_cgi.so Sat May 21 00:39:56 2011
> (4DD6EDBC)
> 6fcd0000 6fcd6000 mod_alias mod_alias.so Sat May 21 00:39:59 2011
> (4DD6EDBF)
> 6ff00000 6ff46000 libhttpd libhttpd.dll Sat May 21 00:39:36 2011
> (4DD6EDA8)
> 71ae0000 71ae8000 wshtcpip wshtcpip.dll Sat Feb 17 15:02:27 2007
> (45D70AF3)
> 71b20000 71b61000 mswsock mswsock.dll Fri Jun 20 20:32:38 2008
> (485BF7C6)
> 71bb0000 71bb9000 wsock32 wsock32.dll Tue Mar 25 10:43:26 2003
> (3E8024BE)
> 71bf0000 71bf8000 ws2help ws2help.dll Sat Feb 17 15:02:18 2007
> (45D70AEA)
> 71c00000 71c17000 ws2_32 ws2_32.dll Sat Feb 17 15:02:17 2007
> (45D70AE9)
> 71f60000 71f64000 security security.dll Tue Mar 25 10:43:24 2003
> (3E8024BC)
> 76290000 762ad000 imm32 imm32.dll Sat Feb 17 14:59:59 2007
> (45D70A5F)
> 76b70000 76b7b000 psapi psapi.dll Sat Feb 17 15:01:25 2007
> (45D70AB5)
> 76ed0000 76efa000 dnsapi dnsapi.dll Thu Mar 03 08:06:05 2011
> (4D6F3DDD)
> 76f10000 76f3e000 wldap32 wldap32.dll Sat Feb 17 15:01:57 2007
> (45D70AD5)
> 76f50000 76f63000 secur32 secur32.dll Wed Feb 04 12:41:02 2009
> (49897ECE)
> 76f70000 76f77000 winrnr winrnr.dll Sat Feb 17 15:01:43 2007
> (45D70AC7)
> 76f80000 76f85000 rasadhlp rasadhlp.dll Sat Feb 17 15:01:01 2007
> (45D70A9D)
> 77380000 77411000 user32 user32.dll Fri Mar 02 07:38:46 2007
> (45E7C676)
> 77420000 77523000 comctl32 comctl32.dll Tue Sep 07 14:08:31 2010
> (4C862B3F)
> 77670000 777a9000 ole32 ole32.dll Mon Jul 26 12:01:18 2010
> (4C4D5CEE)
> 77b90000 77b98000 version version.dll Sat Feb 17 15:01:44 2007
> (45D70AC8)
> 77ba0000 77bfa000 msvcrt msvcrt.dll Sat Feb 17 15:02:46 2007
> (45D70B06)
> 77c00000 77c49000 gdi32 gdi32.dll Thu Oct 23 13:43:54 2008
> (4900637A)
> 77c50000 77cf0000 rpcrt4 rpcrt4.dll Wed Aug 18 11:27:25 2010
> (4C6BA77D)
> 77e40000 77f42000 kernel32 kernel32.dll Sat Mar 21 18:08:26 2009
> (49C51F0A)
> 7c800000 7c8c3000 ntdll ntdll.dll Fri Oct 22 14:27:14 2010
> (4CC18322)
> 7c8d0000 7d0cf000 shell32 shell32.dll Fri Jan 21 22:59:50 2011
> (4D3A01D6)
> 7d180000 7d1d2000 shlwapi shlwapi.dll Thu Oct 15 22:19:54 2009
> (4AD783EA)
> 7d1e0000 7d27c000 advapi32 advapi32.dll Mon Feb 09 12:02:55 2009
> (49900D5F)
>
> Unloaded modules:
> 5a4c0000 5a4d3000 zlib1.dll
> Timestamp: Mon Mar 15 02:51:58 2010 (4B9D92BE)
> Checksum: 00000000
> ImageSize: 00013000
> 6fba0000 6fba7000 mod_deflate.so
> Timestamp: Sat May 21 00:39:52 2011 (4DD6EDB8)
> Checksum: 00000000
> ImageSize: 00007000
> 6fcd0000 6fcd6000 mod_alias.so
> Timestamp: Sat May 21 00:39:59 2011 (4DD6EDBF)
> Checksum: 00000000
> ImageSize: 00006000
> 6fb00000 6fb06000 mod_authz_host.so
> Timestamp: Sat May 21 00:39:43 2011 (4DD6EDAF)
> Checksum: 00000000
> ImageSize: 00006000
> 6fc90000 6fc97000 mod_cgi.so
> Timestamp: Sat May 21 00:39:56 2011 (4DD6EDBC)
> Checksum: 00000000
> ImageSize: 00007000
> 6fc80000 6fc86000 mod_dir.so
> Timestamp: Sat May 21 00:40:00 2011 (4DD6EDC0)
> Checksum: 00000000
> ImageSize: 00006000
> 6fc60000 6fc67000 mod_imagemap.so
> Timestamp: Sat May 21 00:40:01 2011 (4DD6EDC1)
> Checksum: 00000000
> ImageSize: 00007000
> 6fc30000 6fc37000 mod_log_config.so
> Timestamp: Sat May 21 00:39:58 2011 (4DD6EDBE)
> Checksum: 00000000
> ImageSize: 00007000
> 6fc20000 6fc27000 mod_mime.so
> Timestamp: Sat May 21 00:39:57 2011 (4DD6EDBD)
> Checksum: 00000000
> ImageSize: 00007000
> 6fc00000 6fc06000 mod_setenvif.so
> Timestamp: Sat May 21 00:40:06 2011 (4DD6EDC6)
> Checksum: 00000000
> ImageSize: 00006000
> 28000000 280c5000 perl58.dll
> Timestamp: Wed Aug 01 04:35:25 2007 (46AFF16D)
> Checksum: 00000000
> ImageSize: 000C5000
> 10000000 1001f000 mod_perl.so
> Timestamp: Fri Aug 22 03:03:26 2008 (48AE105E)
> Checksum: 00000000
> ImageSize: 0001F000
> 77670000 777a9000 ole32.dll
> Timestamp: Mon Jul 26 12:01:18 2010 (4C4D5CEE)
> Checksum: 0013CFD9
> ImageSize: 00139000
> 003c0000 003c7000 mod_auth_sspi.so
> Timestamp: Wed May 17 20:19:58 2006 (446B694E)
> Checksum: 00009E3B
> ImageSize: 00007000
> 71f60000 71f64000 SECURITY.DLL
> Timestamp: Tue Mar 25 10:43:24 2003 (3E8024BC)
> Checksum: 0000FD45
> ImageSize: 00004000
> 00cd0000 00cd5000 Util.dll
> Timestamp: Fri Aug 22 03:13:47 2008 (48AE12CB)
> Checksum: 00000000
> ImageSize: 00005000
> Closing open log file c:\debuglog.txt


Test at globis

Jul 6, 2011, 10:00 AM

Post #5 of 10 (1182 views)
Permalink
Re: Help Debugging Windows Server 2003 Win32 + Apache2.2 + mod_perl + Activestate Pelr 5.8.8 ErrorID 26 [In reply to]

awarnier wrote:
>
> <snip>
>>
>> A2. yes. interactive checkbox is checked
>
> That is why you get this error box.
> Have you tried unchecking that option ?
> (I'm not saying that it will solve the underlying problem, but it may
> remove the annoying
> symptom).
>
> On a separate note : since you are running this on virtual machines, you
> may want to try
> running Apache in a command window, from the command-line.
>
>>
>> A3. Local System account
>
> That's interesting, considering you are logged-in as LocalSystem, which is
> not a domain
> account. mod_auth_sspi is to do Windows domain authentication, isn't it ?
>
Have now unchecked the enable interact with desktop checkbox, although I
thought we needed that for some automation scripts in the past (that ran
external windows programs on the server).

May also try running Apache from the command line, but then again as you say
it is then a different user, and quite different from running as a service.

This server is not part of a domain. Maybe we just need to remove the
mod_auth_sspi module {probably a hang over from another system}.
--
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-tp32004421p32006592.html
Sent from the mod_perl - General mailing list archive at Nabble.com.


Test at globis

Jul 7, 2011, 1:17 AM

Post #6 of 10 (1175 views)
Permalink
Re: Help Debugging Windows Server 2003 Win32 + Apache2.2 + mod_perl + Activestate Pelr 5.8.8 ErrorID 26 [In reply to]

HappyPerlUser wrote:
>
> Have now unchecked the enable interact with desktop checkbox, although I
> thought we needed that for some automation scripts in the past (that ran
> external windows programs on the server).
>
> May also try running Apache from the command line, but then again as you
> say it is then a different user, and quite different from running as a
> service.
>
> This server is not part of a domain. Maybe we just need to remove the
> mod_auth_sspi module {probably a hang over from another system}.
>

Removed mod_auth_sspi module. It was a hang over. No change in behavior.

Despite the enable interact with desktop being unchecked, the popup messages
still seems to be appearing on the admin console (need to confirm this)

Running Apache from the command line and disabling our watchog did give us
some further information.

Stared httpd.exe: no output and normal service started. Requests were
serviced normally

Initially there were 2 windows processes: PID 3748 & 9000

After the server stalled, the popup appeared on the terminal server and no
further requests were serviced.

Upon hitting the OK button on the popup, there were still 2 windows
processes, but now they were PID 3748 1580

Again server stalled and a popup appeared. No web requests serviced. After
clicking OK requests were serviced again normally. Now the PIDs are 3748 and
3556.

No messages ever appeared on the Windows cmd window running the httpd.exe
process (presume this meant that nothing was sent to stderr or stdout).

No crash dump was ever created, even though I had userdump configured to
monitor the process.

So it looks like something inside Apache is causing the popup and then
attempting to recover internally by regenerating a new worker process.

Could this be related to config parameters???
# Turn on library reload mechanism
PerlModule Apache2::Reload
PerlInitHandler Apache2::Reload

I'd like mod_perl to auto-reload, but I'd like it to do that without waiting
for the OK button on the windows popup.

regards,
--
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-tp32004421p32011207.html
Sent from the mod_perl - General mailing list archive at Nabble.com.


aw at ice-sa

Jul 7, 2011, 2:11 AM

Post #7 of 10 (1172 views)
Permalink
Re: Help Debugging Windows Server 2003 Win32 + Apache2.2 + mod_perl + Activestate Pelr 5.8.8 ErrorID 26 [In reply to]

HappyPerlUser wrote:
>
>
> HappyPerlUser wrote:
>> Have now unchecked the enable interact with desktop checkbox, although I
>> thought we needed that for some automation scripts in the past (that ran
>> external windows programs on the server).
>>
>> May also try running Apache from the command line, but then again as you
>> say it is then a different user, and quite different from running as a
>> service.
>>
>> This server is not part of a domain. Maybe we just need to remove the
>> mod_auth_sspi module {probably a hang over from another system}.
>>
>
> Removed mod_auth_sspi module. It was a hang over. No change in behavior.
>
> Despite the enable interact with desktop being unchecked, the popup messages
> still seems to be appearing on the admin console (need to confirm this)
>
> Running Apache from the command line and disabling our watchog did give us
> some further information.
>
> Stared httpd.exe: no output and normal service started. Requests were
> serviced normally
>
> Initially there were 2 windows processes: PID 3748 & 9000
>
> After the server stalled, the popup appeared on the terminal server and no
> further requests were serviced.
>
> Upon hitting the OK button on the popup, there were still 2 windows
> processes, but now they were PID 3748 1580
>
> Again server stalled and a popup appeared. No web requests serviced. After
> clicking OK requests were serviced again normally. Now the PIDs are 3748 and
> 3556.
>
> No messages ever appeared on the Windows cmd window running the httpd.exe
> process (presume this meant that nothing was sent to stderr or stdout).
>
> No crash dump was ever created, even though I had userdump configured to
> monitor the process.
>
> So it looks like something inside Apache is causing the popup and then
> attempting to recover internally by regenerating a new worker process.
>
> Could this be related to config parameters???
> # Turn on library reload mechanism
> PerlModule Apache2::Reload
> PerlInitHandler Apache2::Reload
>
> I'd like mod_perl to auto-reload, but I'd like it to do that without waiting
> for the OK button on the windows popup.
>

You probably know this, but just in case : the Apache2::Reload module /should/ have
nothing to do with the fact that the Apache server restarts after a crash. It's function
is to trigger a reload of a perl library module, if it notices that the module file has
changed on the disk since it was first loaded.
I am not sure how exactly it does that, but it is possible that in the case of Windows, it
does that by forcing a global "Apache reload" (aka kill the Apache children/threads and
restart them, which will force a reload of the Perl interpreter(s) etc..).

Also, as you might imagine, doing this means that it has to check the module files on disk
regularly, so it will cost some overhead. I would use this on a development server (where
modules might change frequently), but not on a production server (where they should change
only occasionally, and when they do, you should know and can do a manual Apache reload).

Under Windows, Apache starts 2 processes : one is the "main" Apache (similar to the Linux
case), and the other one is the "children" (in the forms of threads) which actually
process the requests. That's why you see 2 PID's.

But then, there are the following notes :
http://search.cpan.org/~phred/mod_perl-2.0.5/docs/api/Apache2/Reload.pod#Threaded_MPM_and_Multiple_Perl_Interpreters

These notes lead me to suspect that, perhaps, there /is/ a relationship between your usage
of Apache2::Reload and the errors you are seeing. Such as perhaps if one of the
applications uses something like these "pseudo-hashes" they are talking about.
In any case, it gives me the general impression that using Apache2::Reload on a Windows
machine may not be the most stable/reliable thing to do.

What happens if you disable Apache2::Reload ?


Test at globis

Jul 7, 2011, 3:36 AM

Post #8 of 10 (1171 views)
Permalink
Re: Help Debugging Windows Server 2003 Win32 + Apache2.2 + mod_perl + Activestate Pelr 5.8.8 ErrorID 26 [In reply to]

awarnier wrote:
>
>
> <snip>
>
> What happens if you disable Apache2::Reload ?
>
>

Didn't think it was related, and we aren't in the habit of changing the perl
libraries, so I've disabled it for now. This does seem to have a significant
contributing effect. I haven't been able to trigger the problem now for 30
minutes and before I could hammer the server and cause the popup in a matter
of minutes. I can't explain this, and can only assume it's down to some sort
of race condition. I doubt this is the root cause, but it could reduce the
pain. 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-tp32004421p32012115.html
Sent from the mod_perl - General mailing list archive at Nabble.com.


Test at globis

Jul 9, 2011, 2:15 AM

Post #9 of 10 (1157 views)
Permalink
Re: Help Debugging Windows Server 2003 Win32 + Apache2.2 + mod_perl + Activestate Pelr 5.8.8 ErrorID 26 [In reply to]

awarnier wrote:
>
>
> <snip>
>
> What happens if you disable Apache2::Reload ?
>
>
48 hours continuous operations now without a single glitch at all. Almost
certain that Apache2::Reload was not the root cause, but it was certainly
heavily implicated in the problem and resultant instability. If anyone's
interested in a crash dump I can re-enable this module temporarily and try
and generate one for you.

--
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-tp32004421p32026697.html
Sent from the mod_perl - General mailing list archive at Nabble.com.


randolf at modperl

Jul 11, 2011, 3:42 PM

Post #10 of 10 (1148 views)
Permalink
Re: Help Debugging Windows Server 2003 Win32 + Apache2.2 + mod_perl + Activestate Pelr 5.8.8 ErrorID 26 [In reply to]

> awarnier wrote:
>
> > <snip>
> >
> > What happens if you disable Apache2::Reload ?
>
> 48 hours continuous operations now without a single glitch at all. Almost
> certain that Apache2::Reload was not the root cause, but it was certainly
> heavily implicated in the problem and resultant instability. If anyone's
> interested in a crash dump I can re-enable this module temporarily and try
> and generate one for you.

I experienced similar problems many years ago with Apache2::Reload
in a Microsoft Windows environment. Although disabling
Apache2::Reload did reduce the problem, it didn't completely
eliminate it and instability continued, although much less frequently
and after much longer time periods.

After having additional troubles with .DLL files and the
"perl.exe.manifest" file, I finally abandoned Windows and now run
everything under NetBSD Unix which simply doesn't exhibit these
problems for me...

I know this probably isn't the most constructive solution for you,
but it's good to know that there are other options. I suspect that
there was some problem either with Apache HTTPd or one of its modules
(and I haven't ruled out ModPerl 2 or APR 2), or MS-Windows itself.

The main reason I gave up on Windows is that each OS version
exhibited different patterns of when and how the crashing occurred.
On one system I saw blue screens, on another the system would just
stop responding (and there were less than 10 simultaneous connections
at any one time due to limits on the external firewall, so this
wasn't it either), and then on another I had problems with Apache
HTTPd just crashing with a variety of different error codes in the
Windows Event Viewer thingy. I could not narrow down specific
results to a particular version of Windows, but Unix did solve the
problem for me while also yielding better performance so I decided to
just ignore this problem and [mostly] forget about it.

Randolf Richardson - randolf [at] inter-corporate
Inter-Corporate Computer & Network Services, Inc.
Vancouver, British Columbia, Canada
http://www.inter-corporate.com

ModPerl modperl RSS feed   Index | Next | Previous | View Threaded
 
 


Interested in having your list archived? Contact Gossamer Threads
 
  Web Applications & Managed Hosting Powered by Gossamer Threads Inc.