.net – 内部连接致命错误

前端之家收集整理的这篇文章主要介绍了.net – 内部连接致命错误前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我最近开始收到此错误:我的应用程序中出现“内部连接致命错误”.错误随机发生.当它发生时,我的应用程序在接下来的几分钟内无法使用.

在仔细分析了错误之后,我得出结论,这个错误只发生在我的应用程序中的一个方法中.此方法触发一系列简单的普通SQL查询,但它确实涉及多线程,但是所有线程都应该在此代码块之前处理.始终在特定SQL查询上发生错误.为了测试我已经消除了这个查询,导致在下一行查询中发生错误.

这是堆栈strace:

Internal connection fatal error.

-------------- Stack trace ---------------
   at Microsoft.Practices.EnterpriseLibrary.ExceptionHandling.ExceptionPolicyEntry.IntentionalRethrow(Exception chainException,Exception originalException)
   at Microsoft.Practices.EnterpriseLibrary.ExceptionHandling.ExceptionPolicyEntry.RethrowRecommended(Exception chainException,Exception originalException)
   at Microsoft.Practices.EnterpriseLibrary.ExceptionHandling.ExceptionPolicyEntry.Handle(Exception exceptionToHandle)
   at Microsoft.Practices.EnterpriseLibrary.ExceptionHandling.ExceptionPolicyImpl.HandleException(Exception exceptionToHandle)
   at Microsoft.Practices.EnterpriseLibrary.ExceptionHandling.ExceptionPolicy.HandleException(Exception exceptionToHandle,String policyName,ExceptionPolicyFactory policyFactory)
   at Microsoft.Practices.EnterpriseLibrary.ExceptionHandling.ExceptionPolicy.HandleException(Exception exceptionToHandle,String policyName)
   at Base.sql.ExecuteScalar()

应用程序基于.NET 3.5构建,显然它使用企业库数据访问.
应用程序在Win2003终端服务器上运行,它使用的是不同服务器上的sql Server 2005数据库.

导致此错误方法不是从GUI触发,而是从命令行触发,如果它具有任何意义.

如果有人建议从这里去哪里,我将非常感激.

解决方法

像这样的奇怪错误通常是对非线程安全的对象进行多线程访问的结果.

我认为这里有一些问题.

>跨线程重用开放连接.
>跨线程重用sql客户端对象.
>没有正确关闭打开的连接 – 您是否使用了包装连接创建?

提供代码示例,我们也许能够发现问题……

原文链接:https://www.f2er.com/mssql/78940.html

猜你在找的MsSQL相关文章