1

我的运营团队和开发人员对为什么会发生这种情况一无所知。基本上,客户端/服务器应用程序的服务器端服务挂起。我们一直在推送新的错误修正版本并向开发人员提供各种日志,但他们无法弄清楚。为了更难弄清楚,这是一个与客户端上的另一个应用程序非常密切合作的应用程序。

我不知道我是否在这里做某事,因为我的windbg经验有限,但这似乎值得一试。谷歌很有希望,但大多数游戏玩家的蓝屏死机并没有提供更多信息……

我在转储开始时发现了这一点:

警告: odbccp32 与 comctl32 重叠。警告:odbc32 与 odbccp32 重叠 警告:odbc32 与 comctl32 重叠 .............警告:mswsock 与 FWPUCLNT 重叠 .......警告:winsta 与 winnsi 重叠。警告:ntlanman 重叠 drprov .... 警告:srvcli 重叠 netapi32 警告:wkscli 重叠 srvcli ....警告:ncrypt 重叠 schannel 。警告: nlaapi 与 ncrypt 重叠。警告:NapiNSP 与 nlaapi 重叠 .... 警告:rsaenh 与 cryptsp 重叠

再低一点:

OVERLAPPED_MODULE:“odbc32”和“odbccp32”的地址区域重叠

这是完整的 !analyze -v 转储:

Microsoft (R) Windows Debugger Version 6.2.8400.0 AMD64
Copyright (c) Microsoft Corporation. All rights reserved.


Loading Dump File [C:\debug\MES\PLSMES.dmp]
User Mini Dump File: Only registers, stack and portions of memory are available

Symbol search path is: srv*c:\symbols*c:\windows\symbols*http://msdl.microsoft.com/download/symbols
Executable search path is: 
Windows 7 Version 7601 (Service Pack 1) MP (16 procs) Free x64
Product: Server, suite: TerminalServer SingleUserTS
Machine Name:
Debug session time: Thu Jun 14 10:37:01.000 2012 (UTC + 2:00)
System Uptime: not available
Process Uptime: 0 days 6:36:13.000
......................................WARNING: odbccp32 overlaps comctl32
.WARNING: odbc32 overlaps odbccp32
WARNING: odbc32 overlaps comctl32
.............WARNING: mswsock overlaps FWPUCLNT
.......WARNING: winsta overlaps winnsi
.WARNING: ntlanman overlaps drprov
....
...WARNING: srvcli overlaps netapi32
.WARNING: wkscli overlaps srvcli
..........WARNING: ncrypt overlaps schannel
.WARNING: nlaapi overlaps ncrypt
.WARNING: NapiNSP overlaps nlaapi
....WARNING: rsaenh overlaps cryptsp

Cannot read PEB32 from WOW64 TEB32 7efdd000 - Win32 error 0n30
wow64cpu!CpupSyscallStub+0x9:
00000000`741f2e09 c3              ret
0:000> !analyze -v
*******************************************************************************
*                                                                             *
*                        Exception Analysis                                   *
*                                                                             *
*******************************************************************************

*** WARNING: Unable to verify timestamp for PLSMES.exe
*** ERROR: Module load completed but symbols could not be loaded for PLSMES.exe

FAULTING_IP: 
+0
00000000`00000000 ??              ???

EXCEPTION_RECORD:  ffffffffffffffff -- (.exr 0xffffffffffffffff)
ExceptionAddress: 0000000000000000
   ExceptionCode: 80000003 (Break instruction exception)
  ExceptionFlags: 00000000
NumberParameters: 0

FAULTING_THREAD:  0000000000001364

DEFAULT_BUCKET_ID:  BAD_DUMP_MISSING_MEMORY

PROCESS_NAME:  PLSMES.exe

OVERLAPPED_MODULE: Address regions for 'odbc32' and 'odbccp32' overlap

ERROR_CODE: (NTSTATUS) 0x80000003 - {EXCEPTION}  Breakpoint  A breakpoint has been reached.

EXCEPTION_CODE: (HRESULT) 0x80000003 (2147483651) - One or more arguments are invalid

NTGLOBALFLAG:  0

APPLICATION_VERIFIER_FLAGS:  0

APP:  plsmes.exe

ADDITIONAL_DEBUG_TEXT:  Followup set based on attribute [Is_ChosenCrashFollowupThread] from Frame:[0] on thread:[PSEUDO_THREAD]

LAST_CONTROL_TRANSFER:  from 0000000000000000 to 00000000741f2e09

PRIMARY_PROBLEM_CLASS:  BAD_DUMP_MISSING_MEMORY

BUGCHECK_STR:  APPLICATION_FAULT_BAD_DUMP_MISSING_MEMORY

STACK_TEXT:  
00000000`00000000 00000000`00000000 bad_dump!missing_stack+0x0


SYMBOL_STACK_INDEX:  0

SYMBOL_NAME:  bad_dump!missing_stack

FOLLOWUP_NAME:  MachineOwner

MODULE_NAME: bad_dump

IMAGE_NAME:  bad_dump

DEBUG_FLR_IMAGE_TIMESTAMP:  0

STACK_COMMAND:  ** Pseudo Context ** ; kb

FAILURE_BUCKET_ID:  BAD_DUMP_MISSING_MEMORY_80000003_bad_dump!missing_stack

BUCKET_ID:  X64_APPLICATION_FAULT_BAD_DUMP_MISSING_MEMORY_bad_dump!missing_stack

WATSON_STAGEONE_URL:  http://watson.microsoft.com/StageOne/PLSMES_exe/4_4_3_2582/4f8ac8f6/unknown/0_0_0_0/bbbbbbb4/80000003/00000000.htm?Retriage=1

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

这可能与应用程序挂起有关吗?重叠记忆似乎并不好。注意:同一台服务器运行同一应用程序的其他实例而不会出错。

任何指向进一步调试的指针也很好。

(从 ServerFault 移出,我想这最好在这里问。)

4

1 回答 1

5

当使用 64 位版本的任务管理器创建 32 位进程的转储时,我已经看到了这种情况。如果是这种情况,请使用 SysWOW64 文件夹中的 32 位版本的任务管理器。此链接描述了该问题:http: //blogs.msdn.com/b/tess/archive/2010/09/29/capturing-memory-dumps-for-32-bit-processes-on-an-x64-machine。 aspx

于 2012-06-19T13:43:04.117 回答