В системе есть объект DBIO (Database User-Intarface Object), которому известны состояния всех транзакций. Этот объект представляет собой множество, элементами которого являются объекты-агрегаты, описывающие контекст транзакции.
Таблица 9: Контекст транзакции
Имя поля |
Размер в байтах |
Значение |
TR_MESS |
4 |
OID сообщения |
TR_KH |
4 |
OID knowhow |
TR_PARAM |
4 |
OID агрегата с параметрами |
TR_TARGET |
4 |
OID целевого объекта сообщения |
TR_RES |
4 |
OID результата |
TR_STACK |
4 |
OID стека |
TR_N |
4 |
Номер транзакции |
TR_HOSTN |
4 |
Номер вызвавшей транзакции |
TR_STATUS |
1 |
Состояние транзакции |
TR_POINT |
2 |
Точка разрыва, в которой находимся |
Для каждой транзакции выделяется свой стек. Механизм сохранения и восстановления стеков описан в [7]. Стеки сохраняются в атомарных объектах.