Это может быть немного натянуто, но я считаю, что это довольно распространенный случай в сценариях интеграции:
У меня была ситуация, когда мне нужно было вызывать стороннюю программу, основанную на данных, переданных в базу данных, но моя бизнес-логика, выполняемая во внешней транзакции, основывалась на возврате из этой сторонней программы. Это потребовало, чтобы я использовал вложенную (автономную) транзакцию для данных, необходимых сторонней программе, и отдельную транзакцию для данных, включающую возврат сторонней программы.