The outbox is an NServiceBus feature that can be enabled at the endpoint level. More information on the documentation.
When we say long-running, we’re not talking about minutes or more.
- When a transaction is committed, it goes to the T-Log on disk (increase the size) and it is also written to pages in memory.
- At some point, the database server will sync pages to disk and cut off the transaction log. However, disk space is not released.
- Large transactions will have proportional entries in the transaction log.
- On top of that if there are long-running transactions the log cannot be cut-off until those are completed. And that adds up.
The outbox and the outbox clean-up process could concur with that, and the message size impacts the transaction size.
Would it be an option for you to provide the results of this query Script: open transactions with text and plans - Paul S. Randal that lists pending transactions? (you can safely remove lines 30 and 31, there is no need for the query plan)
Also, one clarification. Is the T-Log growing continuously or is it just bigger than expected?