加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 站长学院 > MsSql教程 > 正文

.net – 内部连接致命错误

发布时间:2020-12-12 06:26:53 所属栏目:MsSql教程 来源:网络整理
导读:我最近开始收到此错误:我的应用程序中出现“内部连接致命错误”.错误随机发生.当它发生时,我的应用程序在接下来的几分钟内无法使用. 在仔细分析了错误之后,我得出结论,这个错误只发生在我的应用程序中的一个方法中.此方法触发一系列简单的普通SQL查询,但它确
我最近开始收到此错误:我的应用程序中出现“内部连接致命错误”.错误随机发生.当它发生时,我的应用程序在接下来的几分钟内无法使用.

在仔细分析了错误之后,我得出结论,这个错误只发生在我的应用程序中的一个方法中.此方法触发一系列简单的普通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客户端对象.
>没有正确关闭打开的连接 – 您是否使用了包装连接创建?

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

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读