如何处理 .mdump/.hdump 文件?
我正在开发一个 MySQL 用户定义函数 (UDF),它基本上是 Windows 系统函数的包装器。我的问题是 UDF 对于某些输入按预期工作,但对于其他输入会导致 mysqld 崩溃。
UDF 本身采用单个整数参数,该参数未经修改地作为 ULONG 参数传递给 WinAPI 函数。当这个整数小于某个数字k时,一切都很好;但是,当整数大于或等于k时,MySQL服务器进程(mysqld.exe
)持续崩溃。
我的 64 位 Windows 7 计算机始终生成“AppCrash”详细信息,其中包括 MDUMP 和 HDUMP 文件。有没有办法在 Visual C++ 中打开这两个文件来检查崩溃时的堆栈跟踪?
I am working on a MySQL user-defined function (UDF) that is basically a wrapper for a Windows system function. My problem is that the UDF works as intended for certain inputs, but causes mysqld to crash for others.
The UDF itself takes a single integer argument that is passed unmodified as a ULONG parameter to the WinAPI function. When this integer is less than a certain number k, everything is fine; but, when the integer is greater than or equal to k, the MySQL server process (mysqld.exe
) consistently crashes.
My 64-bit Windows 7 machine always generates "AppCrash" details that include an MDUMP and HDUMP file. Is there a way to open either of these files in Visual C++ to examine the stack trace at the time of the crash?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
我相信您可以在 Visual Studio 中打开故障转储。 Windbg 是(IMO)首选方法,因为它更强大,但如果您需要的只是简单的堆栈跟踪,那么 Visual Studio 就足够了。
I believe you can open crash dumps in Visual Studio. Windbg is (IMO) the preferred method as it is more powerful, but if all you need is a simple stack trace then Visual Studio would be sufficient.