【问题标题】:Timeout exception when using NHibernate TransactionScope使用 NHibernate TransactionScope 时的超时异常
【发布时间】:2010-11-29 18:28:09
【问题描述】:

这是Timeout exception when timeout set to infinite time 的延续(我还看到未回答的SqlConnection and TransactionScope Timeout 问题)。

我在 NHibernate 上使用 CastleProject ActiveRecord,C# 3.5。我在 TransactionScope 中对数据库进行了多次后续插入。其中一个(随机的,每次都不同)因 TimeoutException 而失败。无论我在配置文件中设置哪个超时(10 小时),这都无关紧要。如果我不使用事务范围,它可以工作(但太慢)。看起来,NHibernate 事务的默认超时时间为 30 秒,并且不受 hibernate.command_timeout 值的影响。

正确吗?如何克服?

【问题讨论】:

  • 您使用的是哪个 TransactionScope? ActiveRecord 还是 .NET?
  • 我正在使用 ActiveRecord TransactionScope。
  • 我尝试了使用 command_timeout 而不是 nhibernate.command_timeout 的建议,现在我得到了一个新异常“事务未连接或已断开连接”。

标签: nhibernate timeout castle-activerecord sqlexception


【解决方案1】:

您是否尝试过增加连接超时值?

在连接字符串中包含“Connection Timeout=somehighvalueinsecondshere”。

http://msdn.microsoft.com/en-us/library/system.data.sqlclient.sqlconnection.connectiontimeout.aspx

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-09-18
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多