7 Replies Latest reply on Oct 10, 2015 5:09 PM by 3048355

    Transaction aborts after installing ODAC 12c Release 3


      I have .net code that used a transaction scope which works fine using ODAC 11g Release 4, but fails with "Unable to enlist in a distributed transaction" using ODAC 12c Release 1,2, or 3.  The transaction to a single database.  I am at a loss for what could be the issue.


      This issue occurs on both Windows 7 and Windows Server 2008 R2.


      I have reviewed the trace logs for both the Microsoft Distributed Transaction Server, and the Oracle Services for Microsoft Transactions Services.  The MSDTC trace logs indicate that the transaction abort was request was received from the calling application ("RECEIVED_ABORT_REQUEST_FROM_BEGINNER").  The ORAMTS trace logs indicate an OCI error and that there was an attempt to begin a distributed transaction with out logging on ("OCI_ERROR - 2048." ,  "ORA-02048: attempt to begin distributed transaction without logging on")


      I can reproduce this error with a simple code example with just tried to insert records into a table.  If I change the data provider to "System.Data.OracleClient", or uninstall 12c and install 11g this code works fine.


       DataSet1TableAdapters.DataTable1TableAdapter da = new DataSet1TableAdapters.DataTable1TableAdapter();
                  using (TransactionScope scope = new TransactionScope())
                      Transaction txn = Transaction.Current;
                         da.Insert(0, "This ia a title");
                          lblmessage.Text = "Transaction Succeeded.";
                      catch (Exception ex)
                          lblmessage.Text = "Transaction Failed.";


      Can anyone provide any ideas what is happening?  I really would like to use ODAC 12c.