RR> А что ты хочешь с именем транзакции делать? Из другой RR> транзакции/коннекта делать что-то типа ROLLBACK <tx name>? ...
Возьмём ситуацию, когда с одного хоста висят N коннектов.
Предположим, в каждом >1 транзакции (читающие, пишущие).
Как их идентифицировать (на том конце) ?

А нафига? Если имя уникально, то я согласен с Владом. Если же оно не уникально, то что тебе даст знание, что хост 192.168.0.15 создал 20 транзакций с именем 'blabla' и 30 транзакций c именем 'foobar'? Я пока не вижу, чем эта информация может быть полезна _администратору базы данных_.

Конечно, для разработчика приложения похожая фича может быть интересна, чтоб отследить сколько там чего создалось в приложении это интересно, но ФБ не инструмент разработчика и не дебаггер.

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

Роман

Ответить