Currently Fabric does not support SET XACT_ABORT ON.
We request to add this support to reduce breaking changes when migrating and to improve transaction support for the scenario below
This results in a breaking change in how transactions are handled and makes Fabric behave differently to other editions like
- SqlPool (Dedicated)
- SqlDbEngine
As an example consider this Sproc below
CREATE PROC usp_TranTest
AS
BEGIN
BEGIN TRY
BEGIN TRAN
select * from table_that_doesnt_exist
--Do other Work
COMMIT TRAN
END TRY
BEGIN CATCH
ROLLBACK TRAN
print 'error'
END CATCH
print @@TRANCOUNT
END
GO
exec usp_TranTest
This will result in the following behaviour
Sql Pool (Dedicated): Rollback and zero trancount
Fabric: No rollback and tran leak
On Premise SqlDbEngine: No rollback and tran leak
On Premise SqlDbEngine with SET XACT_ABORT ON: Rollback and zero trancount
So the ask for Fabric DW is when migrating from SqlPool we need one of three things:
- Make engine beghave same way as SqlPool
- or
- Add the option of SET XACT_ABORT, so we can use this for backwards compatibility with SqlPool behaviour.
Or
- Both
1 Comment
- fbcideas_migusrNew MemberStatus added:Needs Votes
Recent ideas
Fabric UX Idea: Clearly Identify the Source Workspace for Opened Fabric Artifacts
In many Fabric implementations, organizations have multiple projects and environments, for example: Sales Analytics – Development Sales Analytics – UAT Sales Analytics – Production Similarl...Murtaza_Ghafoor3 hours agoSuper UserNew5Views0likes0CommentsCopilot in Power BI should be canvas-aware and support screenshots / direct visual debugging.
Currently, Copilot in Power BI cannot: See the actual canvas / selected visual Accept screenshots or images to aid in troubleshooting Both of these make debugging visual-level issues painful and...dcohare3 hours agoHelper INew7Views1like0Comments