Home Dashboard Directory Help

There should be a system function to tell whether the current transaction is a distributed transaction by Erland Sommarskog


 as Won't Fix Help for as Won't Fix

Sign in
to vote
Type: Suggestion
ID: 466739
Opened: 6/12/2009 2:22:58 PM
Access Restriction: Public


There is no convenient way to check whether a transaction is a distributed transaction. The information is available in sys.dm_tran_session_transactions and some more DMV, but they require VIEW SERVER STATE, and thus it is not easy to check them from code that is to be run by unprivleged users.

A special property of a distributed transaction is that can be aborted, but not really rolled back. This happens if the server that did not start the transaction rolls back. When you
are in this state, you are very limited to what you can do, too limited (covered in another
Connect bug.)

The reason you would do this is that you may want to have a different error-handling paradigm when the you are the lower part of a distributed transaction.
Sign in to post a comment.
Posted by Microsoft on 3/17/2011 at 4:58 PM
Hej Erland,

Thank you for submitting this suggestion, but we're trying to clean house and remove items we feel we will likely not address given their priority relative to other items in our queue. We believe it is unlikely that we will address this suggestion, and so we are closing it as “won’t fix”.

This cleaning will help us focus on the high-priority items that we feel need to get done, and we hope that it help provide better clarity to you about the issues we will (and won't) address.

While we've tried to look at each of these items individually, this was a large effort, and so we may have erred in assessing this particular suggestion's priority. If you feel that this is worth reconsidering, please feel free to re-file it and we will be happy to take another look.

- Tobias, SQL Server Engine
Posted by Microsoft on 6/15/2009 at 10:23 AM

That's a good suggestion.
We will look at what changes we can make to give you this information in a reasonable way without needing elevated priveleges.

Kevin Farlee
Sign in to post a workaround.