.NET System.Transaction commited despite not having called TransactionScope::Complete()
Last updated on JULY 05, 2017
Applies to:Oracle Provider for OLE DB - Version 184.108.40.206.20 and later
Oracle Data Provider for .NET - Version 220.127.116.11.20 and later
Using System.Transactions with the Oracle Data Provider for .NET (ODP.NET), a transaction may be committed despite TransactionScope::Complete not having been called.
Typically, Complete() is required to commit a transaction, and if it is not called then the transaction will be rolled back when the TransactionScope object is Disposed.
The behavior can be reproduced with the following ODP.NET code:
Sign In with your My Oracle Support account
Don't have a My Oracle Support account? Click to get started
Million Knowledge Articles and hundreds of Community platforms