Is MSDTC required to be installed in this scenario?

Is MSDTC required to be installed in this scenario?

Post by QmVu » Sun, 06 Jun 2010 16:44:49


Hi,

If a C# app. uses System.Transactions to store data in sqlserver and msmq,
and it is deployed to machine A; sqlserver is in machine B; msmq is in
machine C. is msdtc required to be installed in machine A, B, and C ?

If msdtc is required in boxes other than the sqlserver box, is there a
spearate download to install the msdtc? As my understanding is that msdtc
comes with full sql server installation, it is not a feature of Windows.

Thanks,
Ben
 
 
 

Is MSDTC required to be installed in this scenario?

Post by Mr. Arnol » Mon, 07 Jun 2010 02:56:06


The Distributed Transaction Coordinator is a service on the Windows NT
based O/S(s) that must be activated for distributive transactions over a
network between machines.

On server and workstation business class versions of the Windows NT
based O/S(s), such as Win XP, 2k3, Vista, 2k8, etc the service is
present. In order for an application running on one machine to use
distributed transactions over the network with another machine, the
client and the server machines must both be using DTC with the proper
authentication credentials used between the two machines.

In other words and for sure, if there is a Web server farm as an example
the has ASP.NET Web applications running on them that need transactions
with a SQL server machine on the network, the all machines involved must
have the DTC service enabled.

I don't know about MSMQ, but I suspect DTC needs to activated too on the
machines if the application using MSMQ can go ito some kind of queue
transaction state between client and server machines.

 
 
 

Is MSDTC required to be installed in this scenario?

Post by QXJuZSBWYW » Mon, 07 Jun 2010 11:56:54


I don't know about MSDTC and MSMQ, but in general it is a very
common sequence of operation to do:

begin
read from MQ
write to DB
commit or rollback

because then the data will be read from the MQ again
if the write to the DB fails for whatever reason.

Arne