title: Distributed Transaction from Multiple Sources to a Single SQL server Instance
body: <p>What I want to do is have multiple threads, processes or even machines share a single transaction. To be precise. I want to share out a chunk of work (mostly SQL Server queries) to my multiple threads, processes or machines, and I want the work to be atomic. I have looked at MSDTC, but it seems to be great if you want to, for example, update several different SQL Server instances (or other resources), and have everything under the same transaction, but it seems to always originate from the same source. i.e. one process (one connection). Is it possible? No restriction on technology, except SQL Server. I want two phase commit, but I want to start the transaction from one machine, and give that transaction (or a way to join it) to other processes.</p>
  
  <p><strong>Problem Definition</strong>
  The problem is I have a long process, which involves some complicated calculations and updates to the database. The whole process can be scheduled and a lot of it can be processed in parallel. I'd like to farm that processing (including database updates) to separate processes including remote processes.</p>