Исключение тайм-аута при использовании NHibernate TransactionScope
Это продолжение исключения тайм-аута, когда тайм-аут установлен на бесконечное время (и я также вижу оставшиеся без ответа вопросы SqlConnection и TransactionScope Timeout).
Я использую CastleProject ActiveRecord поверх NHibernate, C# 3.5. У меня есть несколько последующих вставок в базу данных в TransactionScope. Один из них (случайный, каждый раз отличается) завершается с TimeoutException. Какой бы тайм-аут я установил в своем конфигурационном файле (10 часов), это не имеет значения. Если я не использую объем транзакции, он работает (но слишком медленно). Кажется, транзакция NHibernate имеет тайм-аут по умолчанию 30 секунд и не зависит от значения hibernate.command_timeout.
Это правильно? Как это побороть?
1 ответ
Вы пытались увеличить время ожидания соединения?
Включите "Время ожидания подключения = некоторое высокое значение в строке подключения" в строке подключения.
http://msdn.microsoft.com/en-us/library/system.data.sqlclient.sqlconnection.connectiontimeout.aspx