Для тех, кто что-нибудь понимает.
1.Как Firebird работает с ID_TRANSACTION ? Изменяет ли он ID после backup/restore (неужели он накапливает счетчик транзакций постоянно?)
2. Какой функций API и как узнать состояние транзаакции по её ID_TRANSACTION?
Определение состояний транзакций в сервере Firebird
Модератор: kdv
-
- Сообщения: 14
- Зарегистрирован: 28 апр 2005, 23:07
-
- Сообщения: 14
- Зарегистрирован: 28 апр 2005, 23:07
Как это "внутри транзакции"?kdv писал(а):id_transaction показывает текущий номер транзакции (внутри транзакции).
все счетчики транзакций сбрасываются после restore, безусловно.
никакой функцией api узнать состояние транзакции невозможно. пока ты получаешь ее номер, она активна. когда она завершается, ты ее номер узнать уже не можешь.
Казалось бы внутри "базы данных" (возможно до Restore). И если не сохраняется состояние транзакции до Restore, то как же происходит удаление мусора?
Задача состоит в том, что записав в некоторою таблицу параметр ID_TRANSACTION, нужно по состоянию этой транзакции в некоторый момент времени удалить эту запись (записи), если эта транзакция не находится в состоянии ACTIVE (блокировку и интим не предлагать - не проходит)
пока транзакция работает, в ней можно получить этот идентификатор. Как перестает работать, то все. собственно, это ж current_transaction.Как это "внутри транзакции"?
ась? или мы вообще про что? иди-ка про транзакции прочитай. А то про какие то id_transaction....И если не сохраняется состояние транзакции до Restore, то как же происходит удаление мусора?
я вот ничего не понял... накой это тебе? На сервере ты не видишь состояния транзакций. Серверу - серверово.Задача состоит в том, что записав в некоторою таблицу параметр ID_TRANSACTION, нужно по состоянию этой транзакции в некоторый момент времени удалить эту запись (записи), если эта транзакция не находится в состоянии ACTIVE (блокировку и интим не предлагать - не проходит)