Consultor Eletrônico



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.