On 09/29/2011 04:20 PM, Mark Rotteveel wrote:
> The solution would at minimum require that FbCommand.Dispose sync in the
> exact same order as Rollback (so first database.syncObject, and then
> GdsStatement) (or that Rollback use the exact same order as in Dispose).
> Then it is impossible for deadlock to occur (assuming that the transaction
> isn't locked further on the Dispose method).

Easier said than done, the locks are made at different points in the 
code, not all in the one function. See the call stacks at the end of the 
original message.

Worth noting also that there are a lot of 'lock(this)' entries, which is 
something MS recommends against in it's docs.

Scott


------------------------------------------------------------------------------
All the data continuously generated in your IT infrastructure contains a
definitive record of customers, application performance, security
threats, fraudulent activity and more. Splunk takes this data and makes
sense of it. Business sense. IT sense. Common sense.
http://p.sf.net/sfu/splunk-d2dcopy1
_______________________________________________
Firebird-net-provider mailing list
Firebird-net-provider@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/firebird-net-provider

Reply via email to