• Sorry, replace Transaction 1 and Transaction 2 with Insert 1 and Insert 2. As it is, it might give an impression of nested transactions and that's not the case. Inserts are ordinary inserts into two tables from one temp table.

    I get your point about commit in catch...still...if the catch block was reached, raiserror should have raised an error or am I wrong?

    So, if the catch block wasn't reached, that would mean that error severity was 0-10. Is there such an error of that severity that would cause only successfull Insert 2?

    But then again, set xact_abort is ON....

    Maybe I'm looking at this from a wrong angle.....