Когда использовать savepoint = False в транзакциях django?

Я могу использовать внутренние атомарные блоки в качестве точек сохранения и перехватывать ошибки внутренних точек сохранения. Таким образом, мы продолжаем действовать в пределах атомарной внешней области видимости, просто откатывая внутренний атомарный блок, как объясняется в этом вопросе, но есть один аргумент savepoint=False, для которого я не вижу случая использования.

В документации:

Вы можете отключить создание точек сохранения для внутренних блоков, установив аргумент savepoint в False. Если произойдет исключение, Django выполнит откат при выходе из первого родительского блока с точкой сохранения, если она есть, и крайнего блока в противном случае. Атомарность по-прежнему гарантируется внешней транзакцией. Эту опцию следует использовать только в том случае, если накладные расходы на точки сохранения ощутимы. Его недостатком является нарушение обработки ошибок, описанной выше.

Если я правильно понимаю, это просто изменит тот факт, что даже поймав ошибку из внутреннего блока, внешняя область видимости все равно откатится. Правильно ли это?

Вернуться на верх