![]() |
#6 |
Дмитрий Ерин
|
MikeR, в ваших примерах из п. 4 и 5 идет обработка плоских данных, для которых отмена части транзакций не критична, ибо они могут быть выполнены позже простым повторным запуском того же кода. А в исходном алгоритме (п. 1) идет обход узлов дерева, причем выполняется операция +=. Если такой обход раздробить на мелкие транзакции, то при их частичном откате восстановить целостность данных будет невозможно физически (если явно не хранить историю обновления).
Ну а пример из п. 2 (while select...) неприменим для обхода дерева при заданной в п.1 структуре данных. Наверное это вам и пытаются сказать... PS: С тем, что п.5 более корректен в общем случае, чем п.4 - согласен.
__________________
![]() |
|
Теги |
базовая информация, транзакции |
|
|