| Предыдущий | Следующий |
| STATUS_RM_CANNOT_BE_FROZEN_FOR_SNAPSHOT | STATUS_TRANSACTION_NO_SUPERIOR |
STATUS_TRANSACTION_MUST_WRITETHROUGH
STATUS_TRANSACTION_MUST_WRITETHROUGH — это правило позднего включения. Транзакция уже завершила этап pre-prepare, поэтому KTM не может безопасно принять запрошенную маску включения, пока диспетчер ресурсов кэширует данные на основе прежних предположений.
Статус не означает повреждение всей транзакции. Он предписывает диспетчеру ресурсов перейти к сквозной записи и прекратить кэширование данных внутри этой транзакции; участие только в более поздних фазах всё ещё возможно, если это допускает контракт включения.
Диспетчер ресурсов присоединяется после pre-prepare
- Запишите фазу транзакции и запрошенную маску включения при попытке позднего включения.
- Проверьте, может ли диспетчер ресурсов немедленно сделать обновления устойчивыми, не полагаясь на отложенное кэшированное состояние.
- Не повторяйте исходный запрос включения без изменений; сначала скорректируйте фазу диспетчера ресурсов и его поведение кэширования.
Ссылки
- Microsoft: создание диспетчера ресурсов KTM
- Microsoft: объекты включения KTM
- Microsoft: уведомления транзакций KTM
Нужно найти другой код? Найти другой код состояния или ошибки.