Communication with the underlying transaction manager has failed

  • Thread starter Thread starter Stefan
  • Start date Start date
S

Stefan

Hi!

I´ve an appplication which uses transcation in com+ to communicate with an
remote sql server database.
This works fine on my windows 7 x86 "appserver", but on another station
using Windows 7 x64 it fails with the message below. I don´t now if
it has something to do with x86, x64.

When saving to the database I got:

System.Transactions.TransactionManagerCommunicationException was unhandled
by user code
Message="Communication with the underlying transaction manager has failed."
Source="System.Data"
StackTrace:
at
System.Data.Common.DbDataAdapter.UpdatedRowStatusErrors(RowUpdatedEventArgs
rowUpdatedEvent, BatchCommandInfo[] batchCommands, Int32 commandCount)
at
System.Data.Common.DbDataAdapter.UpdatedRowStatus(RowUpdatedEventArgs
rowUpdatedEvent, BatchCommandInfo[] batchCommands, Int32 commandCount)
at System.Data.Common.DbDataAdapter.Update(DataRow[] dataRows,
DataTableMapping tableMapping)
at System.Data.Common.DbDataAdapter.UpdateFromDataTable(DataTable
dataTable, DataTableMapping tableMapping)
at System.Data.Common.DbDataAdapter.Update(DataSet dataSet, String
srcTable)
at CORES.Business.Data.SqlHelper.UpdateDataset(String
connectionString, SqlCommand insertCommand, SqlCommand deleteCommand,
SqlCommand updateCommand, DataSet dataSet, String tableName, DataRowState
rowState)
....
at System.Runtime.Remoting.Messaging.Message.Dispatch(Object target, Boolean
fExecuteInContext)
at
System.Runtime.Remoting.Messaging.StackBuilderSink.SyncProcessMessage(IMessage msg, Int32 methodPtr, Boolean fExecuteInContext)
InnerException: System.Runtime.InteropServices.COMException
ErrorCode=-2147168213
Message="The MSDTC transaction manager was unable to pull the
transaction from the source transaction manager due to communication
problems. Possible causes are: a firewall is present and it doesn't have an
exception for the MSDTC process, the two machines cannot find each other by
their NetBIOS names, or the support for network transactions is not enabled
for one of the two transaction managers. (Exception from HRESULT: 0x8004D02B)"
Source="System.Transactions"
StackTrace:
at
System.Transactions.Oletx.IDtcProxyShimFactory.ReceiveTransaction(UInt32
propgationTokenSize, Byte[] propgationToken, IntPtr managedIdentifier, Guid&
transactionIdentifier, OletxTransactionIsolationLevel& isolationLevel,
ITransactionShim& transactionShim)
at
System.Transactions.TransactionInterop.GetOletxTransactionFromTransmitterPropigationToken(Byte[] propagationToken)
InnerException:


--
My settings
--
"Component Services"->"Computers"->"My Computer"->"Distibuted Transaction
Controller"->"Local DTC"-> "Security-tab" in "Local DTC Properties":
Network DTC Access checked.
Allow Remote Clients checked.
Allow remote Administretion checked.
Allow Inbound checked.
Allow Outbound checked.
No Authentication Required
Enable XA Transaction
Enable SNA LU 6.2 Transactions
I´ve enabled distibuted transaction in
 
Stefan said:
Hi!

I´ve an appplication which uses transcation in com+ to communicate with an
remote sql server database.


The Web server and SQL server must have MSDTC enabled on both servers and
both machines must be using the same MSDTC cridentials.
 
Thanks for the reply.

Both machines have msstc enabled and uses the NetworkService-account.
 
Thanks for the reply.

Both machines have msstc enabled and uses the NetworkService-account.






- Show quoted text -

Hi,

In both the MS DTC Settings, make sure Mutual Authentication is
selected and also windows firewall should be disabled.

Once this is done, Stop and Start MSDTC.

Regards,

Ram
 
Back
Top