14/07/2026
After more than 30 years working with SQL Server, there's still one feature I find myself wishing it had.
Autonomous Transactions.
Not because they're flashy.
Because they solve a very real engineering problem.
Imagine a regulatory reporting process that's been running for three hours.
It has identified the reportable population, built hundreds of thousands of records, generated XML and is almost finished.....then one unexpected data condition causes the transaction to roll back.
That's exactly what should happen.
What shouldn't disappear is the diagnostic history explaining how far the process got before it failed.
Today, SQL Server gives us several ways to work around this—CLR, separate connections, Service Broker and external logging among them. In my experience, CLR provides the cleanest implementation when it's governed appropriately.
But imagine if SQL Server simply supported autonomous transactions natively, allowing diagnostic information to be committed independently while the business transaction still rolled back.
For those of us building long-running ETL pipelines, regulatory reporting frameworks and financial systems, that would be a genuine game changer.
I've written a deeper article exploring the problem, the current options and why I think this is one capability SQL Server is still missing. Link in comments.
How are you solving this today?