As far as I know if you open an SQL transaction and an error occurs within it it will rollback automatically.
So, is there any point to putting a transaction in a try-catch block like shown here or here.
Furthermore would set xact_abort on
render the try-catch block obsolete in any case?