Как найти самую старую активную транзакцию в DB2 10.5 и выше? - PullRequest
1 голос
/ 06 ноября 2019

Поскольку административное представление SNAPAPPL и табличная функция SNAP_GET_APPL устарели, в версии 10.5 и выше, как я могу найти самую старую активную транзакцию другими способами?

Ответы [ 2 ]

1 голос
/ 06 ноября 2019

Вы можете использовать следующие функции для получения информации, которая раньше предоставлялась устаревшими административными представлениями «привязки»

MON_GET_TRANSACTION_LOG
MON_GET_UNIT_OF_WORK
MON_GET_DATABASE

Запрос может выглядеть следующим образом:

select integer(mtl.applid_holding_oldest_xact)     as "Oldest Transaction",
       integer(muow.uow_log_space_used /1024 / 1024)  as "Log used(Mb)",
       integer(muow.num_locks_held)                   as "Locks Held",
       integer(muow.client_idle_wait_time)            as "Idle (seconds)",
       time(muow.uow_stop_time)                       as "UOW Stop Time",
       muow.rows_returned                             as "Rows Returned",
       muow.rows_read                                 as "Rows Read",
       integer(muow.rows_inserted)                    as "Rows Inserted",
       integer(muow.rows_updated)                     as "Rows Updated",
       integer(muow.rows_deleted)                     as "Rows Deleted"
from table(mon_get_transaction_log(-1)) mtl
     inner join
     table(mon_get_unit_of_work(null,-1)) muow
     on muow.member = mtl.member 
     and muow.application_handle = mtl.applid_holding_oldest_xact
0 голосов
/ 07 ноября 2019

Правильно! Вы можете использовать табличную функцию MON_GET_TRANSACTION_LOG. Вот еще один запрос, найденный в информационном центре ( ссылка ):

Select MEMBER, CUR_COMMIT_DISK_LOG_READS, CURRENT_ACTIVE_LOG, 
APPLID_HOLDING_OLDEST_XACT from table(mon_get_transaction_log(-1)) as t
order by member asc

Вывод:

MEMBER  CUR_COMMIT_DISK_LOG_READS  CURRENT_ACTIVE_LOG  APPLID_HOLDING_OLDEST_XACT
------  -------------------------  ------------------  --------------------------
     0                       9999                   1                           7
...