Kbase P50334: How to find if a transaction is still open and who owns it with VST's ?
Autor |
  Progress Software Corporation - Progress |
Acesso |
  Público |
Publicação |
  19/01/2009 |
|
Status: Verified
GOAL:
How to find if a transaction is still open and who owns it?
GOAL:
Is there any way to find out which transactions in the BI file are still open?
GOAL:
How to find which transaction is still running?
GOAL:
How to find which transaction is causing the bi file to grow?
GOAL:
How to identify long running transactions with VST ?
FACT(s) (Environment):
All Supported Operating Systems
Progress 9.x
OpenEdge 10.x
FIX:
There is no explicit tool available for bi file parsing. Open transactions can be found online by using the promon utility through the R&D option:
1. Status Displays,
4. Processed/Clients,
3. Active Transactions.
Any transaction that is Active and has a "transaction start time" that infers that the transaction has been running for longer than 10 minutes, is considered exceptional.
The VST tables, _Trans and _Connect can be employed to give more explicit detail through customization to your particular needs. Below is a sample of how this may be constructed.
/* test1 run against sports database*/
CREATE customer.
UPDATE NAME.
/* and here's the transaction that test1 above has just started */
FOR EACH _trans WHERE _Trans-State <> ?
BY _Trans._Trans-Duration DESCENDING:
FIND FIRST _Connect WHERE _Connect._Connect-Usr = _Trans._Trans-Usrnum.
DISP
STRING(TIME,"HH:MM:SS") LABEL "TIME NOW"
_Connect._Connect-Name
_Connect._Connect-PID FORMAT 99999
_Trans._Trans-Usrnum
_Trans._Trans-Txtime FORMAT "X(40)".
END.
Against a production situation, the transaction at the top of the list will be the longest running one.