Prev: When the code is chines/ japan or some other I get square boxes
Next: about the hashtable and equals
From: Ben on 5 Jun 2010 03:44 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
From: Mr. Arnold on 5 Jun 2010 13:56 Ben wrote: > 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 > > 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.
From: Arne Vajhøj on 5 Jun 2010 22:56
On 05-06-2010 13:56, Mr. Arnold wrote: > 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. 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 |