Skip to content

Commit c9bf97e

Browse files
authored
Merge pull request #116596 from spelluru/ehubtransactions0526
timeout
2 parents 72f9e33 + 830ac9b commit c9bf97e

File tree

1 file changed

+8
-5
lines changed

1 file changed

+8
-5
lines changed

articles/service-bus-messaging/service-bus-transactions.md

Lines changed: 8 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -32,16 +32,16 @@ Service Bus supports grouping operations against a single messaging entity (queu
3232

3333
The operations that can be performed within a transaction scope are as follows:
3434

35-
* **[QueueClient](/dotnet/api/microsoft.azure.servicebus.queueclient), [MessageSender](/dotnet/api/microsoft.azure.servicebus.core.messagesender), [TopicClient](/dotnet/api/microsoft.azure.servicebus.topicclient)**: Send, SendAsync, SendBatch, SendBatchAsync
36-
* **[BrokeredMessage](/dotnet/api/microsoft.servicebus.messaging.brokeredmessage)**: Complete, CompleteAsync, Abandon, AbandonAsync, Deadletter, DeadletterAsync, Defer, DeferAsync, RenewLock, RenewLockAsync
35+
* **[QueueClient](/dotnet/api/microsoft.azure.servicebus.queueclient), [MessageSender](/dotnet/api/microsoft.azure.servicebus.core.messagesender), [TopicClient](/dotnet/api/microsoft.azure.servicebus.topicclient)**: `Send`, `SendAsync`, `SendBatch`, `SendBatchAsync`
36+
* **[BrokeredMessage](/dotnet/api/microsoft.servicebus.messaging.brokeredmessage)**: `Complete`, `CompleteAsync`, `Abandon`, `AbandonAsync`, `Deadletter`, `DeadletterAsync`, `Defer`, `DeferAsync`, `RenewLock`, `RenewLockAsync`
3737

3838
Receive operations are not included, because it is assumed that the application acquires messages using the [ReceiveMode.PeekLock](/dotnet/api/microsoft.azure.servicebus.receivemode) mode, inside some receive loop or with an [OnMessage](/dotnet/api/microsoft.servicebus.messaging.queueclient.onmessage) callback, and only then opens a transaction scope for processing the message.
3939

4040
The disposition of the message (complete, abandon, dead-letter, defer) then occurs within the scope of, and dependent on, the overall outcome of the transaction.
4141

4242
## Transfers and "send via"
4343

44-
To enable transactional handover of data from a queue to a processor, and then to another queue, Service Bus supports *transfers*. In a transfer operation, a sender first sends a message to a *transfer queue*, and the transfer queue immediately moves the message to the intended destination queue using the same robust transfer implementation that the auto-forward capability relies on. The message is never committed to the transfer queue's log in a way that it becomes visible for the transfer queue's consumers.
44+
To enable transactional handover of data from a queue to a processor, and then to another queue, Service Bus supports *transfers*. In a transfer operation, a sender first sends a message to a *transfer queue*, and the transfer queue immediately moves the message to the intended destination queue using the same robust transfer implementation that the autoforward capability relies on. The message is never committed to the transfer queue's log in a way that it becomes visible for the transfer queue's consumers.
4545

4646
The power of this transactional capability becomes apparent when the transfer queue itself is the source of the sender's input messages. In other words, Service Bus can transfer the message to the destination queue "via" the transfer queue, while performing a complete (or defer, or dead-letter) operation on the input message, all in one atomic operation.
4747

@@ -93,13 +93,16 @@ using (var ts = new TransactionScope(TransactionScopeAsyncFlowOption.Enabled))
9393
}
9494
```
9595

96+
## Timeout
97+
A transaction times out after 2 minutes. The transaction timer starts when the first operation in the transaction starts.
98+
9699
## Next steps
97100

98101
See the following articles for more information about Service Bus queues:
99102

100103
* [How to use Service Bus queues](service-bus-dotnet-get-started-with-queues.md)
101-
* [Chaining Service Bus entities with auto-forwarding](service-bus-auto-forwarding.md)
102-
* [Auto-forward sample](https://github.com/Azure/azure-service-bus/tree/master/samples/DotNet/Microsoft.ServiceBus.Messaging/AutoForward)
104+
* [Chaining Service Bus entities with autoforwarding](service-bus-auto-forwarding.md)
105+
* [Autoforward sample](https://github.com/Azure/azure-service-bus/tree/master/samples/DotNet/Microsoft.ServiceBus.Messaging/AutoForward)
103106
* [Atomic Transactions with Service Bus sample](https://github.com/Azure/azure-service-bus/tree/master/samples/DotNet/Microsoft.ServiceBus.Messaging/AtomicTransactions)
104107
* [Azure Queues and Service Bus queues compared](service-bus-azure-and-service-bus-queues-compared-contrasted.md)
105108

0 commit comments

Comments
 (0)