Try OpenEdge Now
skip to main content
Application Migration and Development Guide
Application Development with PAS for OpenEdge : Programming the Progress Application Server for OpenEdge : Managing transactions : Types of a PAS for OpenEdge instance transactions : Automatic transactions
Automatic transactions
An automatic transaction allows the transaction to span more than one remote procedure call. That is, once an automatic transaction is started through some remote procedure call, you can explicitly terminate it in the same procedure call or in a subsequent procedure call running in the same PAS for OpenEdge session. To control this type of transaction, the OpenEdge provides attributes and methods that you can use to specify how and when you want the transaction to end in the PAS for OpenEdge session.
With automatic transactions, transactions tend to grow large, with greater potential for lock conflicts and other concurrency problems. (For more information on small and large transactions, see OpenEdge Getting Started: ABL Essentials.) Even so, automatic transactions can be extremely useful where the application requires the transaction to span multiple client requests. This is especially true where client response is entirely programmatic and does not depend on user interaction for a transaction to complete.
An example of a useful application might be where a transaction commit depends on a real-time status from a process control or financial trading system. Depending on this status, the server might require additional information from the client to resolve the transaction. As long as the client does not have to wait to make this information available to the server, the impact of the automatic transaction on system performance can be minimal. For more information on managing automatic transactions, see Implementing automatic transactions.