Я сейчас тренируюсь на Мендиксе. И я был прослушан вопросом в проверке знаний для части Обработка ошибок. Вопрос ниже
Что произойдет, если будут использоваться те же микропотоки, но обработка ошибок в основном микропотоке настроена как пользовательская с откатом, а обработка ошибок в субмикропотоке - пользовательская без отката?
И правильный ответ:
Объекты Order, OrderLine и Log откатываются, пока объект Customer фиксируется в базе данных
Микропоток по вопросам:
Насколько я понимаю:
Когда происходит ошибка в основном микропотоке, следует откатить создание заказа, но следует выполнить изменение в клиенте, поскольку основной микропоток использует Custom with Rollback
, а в субмикропотоке и строка заказа, и журнал должны быть зафиксированы, поскольку субмикропоток использует Custom without Rollback
.
Вопрос:
Почему правильный ответ The Order, OrderLine, and Log objects are rolled back while the Customer object is committed to the database
Ниже приведено изображение в качестве доказательства: