0

I've created a WPF application (VS2010; EF4; MS SQL Server) that has been running for years. Suddenly, after a routine server update, the following exception turns up at when committing a particular transaction:

The underlying provider failed on Commit.
[inner exception] This SqlTransaction has completed; it is no longer usable.

It is unclear why and when it happens. Doing the same test (restore database, rerun import), the exception might occur and usually for a different subset of data.

On the server the transaction is committed, but it seems 'the underlying provider' doesn't get this confirmation and proceeds to throw the exception.

This behaviour only happens on the production server. There is no problem with the acceptance server and development setup (local database).

I could not find a clear answer or lead to what might be the cause of this problem. After reading this, I checked the activity on the server, but there's no CPU hogging going on. I wonder there's some network "magic" going on.

What could be the cause of this? How can I track down the reason? Is there some timeout that can be tweaked?

H. de Jonge
  • 878
  • 7
  • 25
  • What is your ConnectionString, does it already set a timeout? – H H Dec 06 '17 at 11:33
  • @HenkHolterman The connection string gets built dynamically. There are no explicitely set timeouts, so the defaults apply (30s?). Also there is no long wait period after committing before the exception occurs. – H. de Jonge Dec 06 '17 at 12:45

0 Answers0