Click here to Skip to main content
15,888,065 members
Please Sign up or sign in to vote.
0.00/5 (No votes)
See more:
I'm trying to understand the concept of transaction messaging on MSMQ as well as transaction support in wcf.

For Queues with transaction support, does it mean the following set of operations will be automatic?

1. Client A on Machine 1 writes a row in its application database that message sent to queue.
2. Creates/Sends a Order Create message to a queue (say MSMQ).
3. The MSMQ message gets picked up by Client B on Machine 2.
4. Client B creates an Order Row in its own application Database?

If I do all the above step in a distributed transaction, does it mean all 4 steps will either fail or succeed atomically?

Or transaction will only apply from step 1 - 2?

Similarly, if say WCF was involved above instead of the MSMQ, will all steps be atomic i.e within a transaction?

What I have tried:

Tried reading different articles about it.
Posted
Updated 3-Nov-17 20:17pm

1 solution

Read the definition : [^]

If you read/write to a message queue and do other operations in a transaction, they will all succeed or fail/rollback (so for the queue no enqueue and for writes and no dequeue for reads, and databases commit or rollback etc.).
 
Share this answer
 

This content, along with any associated source code and files, is licensed under The Code Project Open License (CPOL)



CodeProject, 20 Bay Street, 11th Floor Toronto, Ontario, Canada M5J 2N8 +1 (416) 849-8900