记一次 .NET某企业数字化平台 崩溃分析

💡 原文中文,约7100字,阅读约需17分钟。
📝

内容提要

本文讲述了一个软件崩溃的故事,作者使用WinDbg分析了崩溃原因,发现是栈溢出导致的异常。作者定位到了栈溢出线程,并发现是SqlSugar库导致的。最后建议作者改变写法以避免栈溢出。

🎯

关键要点

  • 软件偶发崩溃,作者通过分析dump文件进行故障排查。
  • 使用WinDbg分析崩溃原因,发现是栈溢出导致的异常。
  • 栈溢出异常的代码为c00000fd,定位到栈溢出线程。
  • 通过调用栈分析,发现SqlSugar库可能是导致栈溢出的原因。
  • 进一步分析SqlSugar的调用方式,发现用户代码在处理大数据量时导致了栈溢出。
  • 建议用户修改代码逻辑,避免使用递归以防止栈溢出。
➡️

继续阅读