Have a question on application_handle reuse. When we join from different monitoring table functions/admin views using application_handle, eg. from MON_GET_APPL_LOCKWAIT / MON_LOCKWAIT to MON_GET_CONNECTION, is there any guarantee that application_handle returned by both sides are actually tied to the same TX? Is it possible that the application_handle is reused, and MON_LOCKWAIT and MON_GET_CONNECTION return metrics from different TXs sharing the same application_handle?
A little bit background, we use jdbc connectionPool and pass application metadata, eg. client_userid, which is returned by MON_GET_CONNECTION; we also monitor lockwait regularly. We recently encountered a puzzle where MON_LOCKWAIT says one TX spent over 100sec on lockwait, but the client_userid points us to a TX that completed super fast. Of course it's possible that we have a bug passing wrong value to client_userid, but just want to make sure DB2 doesn't introduce any extra confusion.
Thanks for your input.
Rui Chen[Organization Members] @ Feb 27, 2018 - 02:54 PM (America/Eastern)