This transaction will blow up with the following messageServer: Msg 3930, Level 16, State 1, Line 15The current transaction cannot be committed and cannot support operations that write to the log file. Roll back the transaction.Server: Msg 3998, Level 16, State 1, Line 1Uncommittable transaction is detected at the end of the batch. The transaction is rolled back.

We can use XACT_STATE() to check if we need to rollback or not without blowing up. I also used the ERROR_MESSAGE() function to print the error

I sense many useless updates in you... Useless updates lead to fragmentation... Fragmentation leads to downtime...Downtime leads to suffering..Fragmentation is the path to the darkside.. DBCC INDEXDEFRAG and DBCC DBREINDEX are the force...May the force be with you"