Closed p5pRT closed 12 years ago
Am seeing intermittent crashes in function Perl_stashpv_hvname_match.
System is ActivePerl version 5.8.8.820\, on Windows Server 2003 Enterprise x64 Edition.
Two stack traces are below.
Please advise how best to proceed.
Thank you for any assistance.
Sincerely\, Mark Buxbaum Senior Software Engineer Digital Stata\, Inc. mbuxbaum@digital-strata.com
#========================= First crash =================================#
*----> State Dump for Thread Id 0xf14 \<----*
eax=02894fbc ebx=00fffffb ecx=6d6a2b10 edx=0000000a esi=02894fb8 edi=00000000 eip=28085af7 esp=0240fb90 ebp=0240fbc4 iopl=0 nv up ei pl zr na po nc cs=0023 ss=002b ds=002b es=002b fs=0053 gs=002b efl=00010246
*** WARNING: Unable to verify checksum for C:\Perl\bin\perl58.dll *** ERROR: Symbol file could not be found. Defaulted to export symbols for C:\Perl\bin\perl58.dll - function: perl58!Perl_stashpv_hvname_match 28085ae3 44 inc esp 28085ae4 240c and al\,0xc 28085ae6 83c00c add eax\,0xc 28085ae9 50 push eax 28085aea ff5634 call dword ptr [esi+0x34] 28085aed 8bf8 mov edi\,eax 28085aef 8d4604 lea eax\,[esi+0x4] 28085af2 59 pop ecx 28085af3 8b08 mov ecx\,[eax] 28085af5 8938 mov [eax]\,edi FAULT ->28085af7 894704 mov [edi+0x4]\,eax ds:002b:00000004=???????? 28085afa 890f mov [edi]\,ecx 28085afc 897708 mov [edi+0x8]\,esi 28085aff 897904 mov [ecx+0x4]\,edi 28085b02 8b06 mov eax\,[esi] 28085b04 8bce mov ecx\,esi 28085b06 ff5010 call dword ptr [eax+0x10] 28085b09 8d470c lea eax\,[edi+0xc] 28085b0c 5f pop edi 28085b0d 5e pop esi 28085b0e c20400 ret 0x4
*----> Stack Back Trace \<----*
*** WARNING: Unable to verify checksum for C:\Perl\lib\auto\threads\shared\shared.dll
*** ERROR: Symbol file could not be found. Defaulted to export symbols for C:\Perl\lib\auto\threads\shared\shared.dll -
*** WARNING: Unable to verify checksum for C:\Perl\bin\perl.exe
*** ERROR: Module load completed but symbols could not be loaded for C:\Perl\bin\perl.exe
*** ERROR: Symbol file could not be found. Defaulted to export symbols for C:\WINDOWS\syswow64\kernel32.dll -
ChildEBP RetAddr Args to Child
WARNING: Stack unwind information not available. Following frames may be wrong.
0240fbc4 28001971 02965564 00000000 007ffffc perl58!Perl_stashpv_hvname_match+0x8a5
0240fbe4 28001e4a 02965564 02966384 007ffffc perl58!Perl_av_store+0x1b8
0240fc04 003e241a 00000000 02966384 6d69cf64 perl58!Perl_av_push+0x1fa
0240fc48 28040019 0e6ecf78 0279d3f8 00000001 shared+0x241a
0240fc84 2805d49d 012a4394 002a4394 280246cf perl58!Perl_sv_compile_2op+0x7b9f
0240fd58 280241f5 002a4394 0e6ecf60 00000042 perl58!Perl_runops_standard+0xc
0240fd6c 280323c6 002a4394 28095504 00000002 perl58!Perl_call_method+0x2b
0240fd9c 2805d49d 0284e620 002a4394 28023fdf perl58!Perl_Guse_safe_putenv_ptr+0xa248
0240fe24 28088a21 002a4394 00000000 00000000 perl58!Perl_runops_standard+0xc
0240ff3c 00401012 00000003 002a3f28 002a2d38 perl58!RunPerl+0x86
0240ffc0 7d4e992a 00000000 00000000 7efdf000 perl+0x1012
0240fff0 00000000 00401016 00000000 00000000 kernel32!BaseProcessInitPostImport+0x8d
#========================= Second crash =================================#
*----> State Dump for Thread Id 0x1694 \<----*
eax=002a277c ebx=00000018 ecx=7614bfb8 edx=0000000a esi=002a2778 edi=00000000 eip=28085af7 esp=0240fcdc ebp=0240fd10 iopl=0 nv up ei pl zr na po nc cs=0023 ss=002b ds=002b es=002b fs=0053 gs=002b efl=00010246
*** WARNING: Unable to verify checksum for C:\Perl\bin\perl58.dll *** ERROR: Symbol file could not be found. Defaulted to export symbols for C:\Perl\bin\perl58.dll - function: perl58!Perl_stashpv_hvname_match 28085ae3 44 inc esp 28085ae4 240c and al\,0xc 28085ae6 83c00c add eax\,0xc 28085ae9 50 push eax 28085aea ff5634 call dword ptr [esi+0x34] 28085aed 8bf8 mov edi\,eax 28085aef 8d4604 lea eax\,[esi+0x4] 28085af2 59 pop ecx 28085af3 8b08 mov ecx\,[eax] 28085af5 8938 mov [eax]\,edi FAULT ->28085af7 894704 mov [edi+0x4]\,eax ds:002b:00000004=???????? 28085afa 890f mov [edi]\,ecx 28085afc 897708 mov [edi+0x8]\,esi 28085aff 897904 mov [ecx+0x4]\,edi 28085b02 8b06 mov eax\,[esi] 28085b04 8bce mov ecx\,esi 28085b06 ff5010 call dword ptr [eax+0x10] 28085b09 8d470c lea eax\,[edi+0xc] 28085b0c 5f pop edi 28085b0d 5e pop esi 28085b0e c20400 ret 0x4
*----> Stack Back Trace \<----*
*** WARNING: Unable to verify checksum for C:\Perl\bin\perl.exe
*** ERROR: Module load completed but symbols could not be loaded for C:\Perl\bin\perl.exe
*** ERROR: Symbol file could not be found. Defaulted to export symbols for C:\WINDOWS\syswow64\kernel32.dll -
ChildEBP RetAddr Args to Child
WARNING: Stack unwind information not available. Following frames may be wrong.
0240fd10 280628b1 002a4394 7614abe4 00000018 perl58!Perl_stashpv_hvname_match+0x8a5
0240fd30 28066325 04040804 00000000 7614aaf4 perl58!Perl_sv_setsv_flags+0x9fd
0240fd9c 2805d49d 0284e64c 002a4394 28023fdf perl58!Perl_newSVsv+0x7a
0240fe24 28088a21 002a4394 00000000 00000000 perl58!Perl_runops_standard+0xc
0240ff3c 00401012 00000003 002a3f28 002a2d38 perl58!RunPerl+0x86
0240ffc0 7d4e992a 00000000 00000000 7efdf000 perl+0x1012
0240fff0 00000000 00401016 00000000 00000000 kernel32!BaseProcessInitPostImport+0x8d
On 3/13/07\, via RT Mark Buxbaum \perlbug\-followup@​perl\.org wrote:
0240fbc4 28001971 02965564 00000000 007ffffc perl58!Perl_stashpv_hvname_match+0x8a5 0240fbe4 28001e4a 02965564 02966384 007ffffc perl58!Perl_av_store+0x1b8 0240fc04 003e241a 00000000 02966384 6d69cf64 perl58!Perl_av_push+0x1fa 0240fc48 28040019 0e6ecf78 0279d3f8 00000001 shared+0x241a 0240fc84 2805d49d 012a4394 002a4394 280246cf perl58!Perl_sv_compile_2op+0x7b9f 0240fd58 280241f5 002a4394 0e6ecf60 00000042 perl58!Perl_runops_standard+0xc 0240fd6c 280323c6 002a4394 28095504 00000002 perl58!Perl_call_method+0x2b 0240fd9c 2805d49d 0284e620 002a4394 28023fdf perl58!Perl_Guse_safe_putenv_ptr+0xa248 0240fe24 28088a21 002a4394 00000000 00000000 perl58!Perl_runops_standard+0xc 0240ff3c 00401012 00000003 002a3f28 002a2d38 perl58!RunPerl+0x86 0240ffc0 7d4e992a 00000000 00000000 7efdf000 perl+0x1012 0240fff0 00000000 00401016 00000000 00000000 kernel32!BaseProcessInitPostImport+0x8d
You didn't show your code\, you didn't indicate which modules were loaded\, you didn't indicate anything about whether you're using any threading features or the Win32 pseudo-fork feature. Providing any of those might help. Contacting ActiveState would also be reasonable since its their build.
I'm immediately suspecting some corrupted data because of either bad thread usage or maybe just some buggy XS/C code. Based on where in the code you were probably in av_store\, I guess you were writing to some kind of tied variable. I also guess there's muckery afoot in the object backing the tied variable.
Its all 100% speculation though.
Josh
The RT System itself - Status changed from 'new' to 'open'
More info concerning this crash bug in Perl which I logged a week ago on Mar 13 2007.
Both times this crash occurred the Perl was processing large data files- over 500MB for the first\, and over 1GB for the second.
Note that I could not reproduce the crash a third time using the first data file.
There may be a memory- or size-related factor.
HTH\, Mark Buxbaum Senior Software Engineer Digital Strata
----- Original Message ----- From: \perlbug\-followup@​perl\.org To: \mbuxbaum@​digital\-strata\.com Sent: Tuesday\, March 13\, 2007 12:18 PM Subject: [perl #41801] perlbug AutoReply: Crash in Perl_stashpv_hvname_match
Greetings\,
This message has been automatically generated in response to the creation of a perl bug report regarding: "Crash in Perl_stashpv_hvname_match".
There is no need to reply to this message right now. Your ticket has been assigned an ID of [perl #41801]. Within the next 24-72 hours\, your message will be posted to the perl developers. Please be patient!
Please include the string:
[perl #41801]
in the subject line of all future correspondence about this issue. To do so\, you may reply to this message (please delete unnecessary quotes and text.)
Thank you\, perlbug-followup@perl.org
------------------------------------------------------------------------- MIME-Version: 1.0 X-Spam-Status: No\, hits=-6.0 required=8.0 tests=BAYES_00\,DK_POLICY_SIGNSOME\,FORGED_RCVD_HELO\,HTML_40_50\,HTML_MESSAGE\,PERLBUG_CONF X-Mailer: Microsoft Outlook Express 6.00.2900.3028 Received-SPF: neutral (x1.develooper.com: local policy) Received-SPF: pass (x1.develooper.com: local policy) X-Virus-Checked: Checked X-Virus-Checked: Checked X-Old-Spam-Check-BY: la.mx.develooper.com Content-Type: multipart/alternative; boundary="----=_NextPart_000_000F_01C76569.964675C0" Message-ID: \001201c765a4$48d355c0$1ee72145@​digitalstrata\.com Received: (qmail 31595 invoked from network); 13 Mar 2007 19:17:23 -0000 Received: from localhost (HELO la.mx.develooper.com) (127.0.0.1) by localhost with SMTP; 13 Mar 2007 19:17:23 -0000 Received: (qmail 31592 invoked by alias); 13 Mar 2007 19:17:23 -0000 Received: from la.mx.develooper.com (HELO x1.develooper.com) (63.251.223.176) by la.mx.develooper.com (qpsmtpd/0.28) with SMTP; Tue\, 13 Mar 2007 12:17:13 -0700 Received: (qmail 31412 invoked by uid 225); 13 Mar 2007 19:17:08 -0000 Received: (qmail 31405 invoked by alias); 13 Mar 2007 19:17:08 -0000 Received: from ip-69-33-231-3.sjc.megapath.net (HELO mail.digital-strata.com) (69.33.231.3) by la.mx.develooper.com (qpsmtpd/0.28) with ESMTP; Tue\, 13 Mar 2007 12:16:58 -0700 Received: from localhost ([127.0.0.1]) by mail.digital-strata.com for perlbug@perl.org; Tue\, 13 Mar 2007 12:16:55 -0800 Delivered-To: rt-perl5@netlabs.develooper.com Delivered-To: perlbug@perl.org Subject: Crash in Perl_stashpv_hvname_match Return-Path: \mbuxbaum@​digital\-strata\.com X-Msmail-Priority: Normal X-Spam-Check-BY: la.mx.develooper.com X-Priority: 3 X-Old-Spam-Status: No\, hits=-6.0 required=8.0 tests=BAYES_00\,DK_POLICY_SIGNSOME\,FORGED_RCVD_HELO\,HTML_40_50\,HTML_MESSAGE\,PERLBUG_CONF Date: Tue\, 13 Mar 2007 12:17:37 -0700 X-Mimeole: Produced By Microsoft MimeOLE V6.00.2900.3028 To: \perlbug@​perl\.org From: "Mark Buxbaum" \mbuxbaum@​digital\-strata\.com
I’m going to assume this is the same bug I fixed in the 5.15.x series related to the current package being freed (due to *{__PACKAGE_."::"} = *whatever) and then subs being defined.
--
Father Chrysostomos
@cpansprout - Status changed from 'open' to 'resolved'
Migrated from rt.perl.org#41801 (status was 'resolved')
Searchable as RT41801$