Почему SET XACT_ABORT не работает по умолчанию?

Чтение таких вещей как пост в блоге Dan Guzman, интересно: почему не SET XACT_ABORT ON поведение по умолчанию? Есть ли случай, когда он вреден или гораздо менее желателен/эффективнее, чем SET XACT_ABORT OFF?

Ответ 1

Это автоматический ответ на ошибку, более желательно, если вы сможете справиться с ошибкой и восстановить ее. Если транзакция автоматически откатывается назад, вы не получите эту возможность.

Проблема, которую Дан упоминает в своем блоге, возникает из-за прерывания от клиента, в SQL это прерывание не существует. Следовательно, в SQL по умолчанию не происходит автоматического прерывания транзакций.