Exactly the same problem here when running NHibernate in NServiceBus hosted 
services. In our case it doesn't have to be a deadlock, just a general 
failure within the transaction. It seems to be related to the fact that the 
SQL ConnectionPool and DTC have some issues with multithreading... Would be 
awesome to see a fix for this in NHibernate, since I don't think the 
underlying MSDTC or SqlConnectionPool is going to be changed anytime soon.

On Friday, October 19, 2012 2:21:39 PM UTC+2, Roy Jacobs wrote:
>
> Hi all,
>
> I see quite a few bugs on JIRA relating to the same topic:
>
> https://nhibernate.jira.com/secure/IssueNavigator.jspa?reset=true&jqlQuery=labels+%3D+TransactionScope
>
> They're all about the fact that SQL errors cause a session's SqlConnection 
> to be closed from a different thread than the thread that opened it 
> (through the AdoNetDistributedTransacionFactory). We've been running into 
> this issue for quite some time now as well. We store NServiceBus saga's 
> using NHibernate and occasionally we may get a deadlock. Normally this 
> would not be a huge problem (just retry the message), but once this 
> deadlock occurs, we get, for a minute or 2, a log full of errors like "New 
> request is not allowed to start because it should come with valid 
> transaction descriptor" and "Distributed transaction completed. Either 
> enlist this session in a new transaction or the NULL transaction.".
>
> Now, this is something we'd like to have fixed, or fix ourselves. Is 
> anyone actively looking at this, right now? Or willing to share some 
> suggestions/findings?
>
> Roy
>

-- 

--- 
You received this message because you are subscribed to the Google Groups 
"nhibernate-development" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
For more options, visit https://groups.google.com/groups/opt_out.


Reply via email to