AutoTMF Software User's Guide (Update 15)
Configuring Automatic Transaction Processing
HP NonStop AutoTMF Software User’s Guide—429952-017
4-7
Transaction Isolation
Excessive lock contention can be reduced through proper NonStop AutoTMF 
configuration, but changes in the configuration may cause more frequent transactions 
and a corresponding increase in processing requirements.
Transaction Isolation
Transaction isolation influences the duration of automatic transactions to reduce the 
effect of automatic transactions outside the process that started them. There are three 
levels of isolation:
Weak isolation commits active automatic transactions whenever a server process 
waits for or replies to a request on $RECEIVE. The default isolation mode is weak 
isolation, which is sufficient for most applications and provides the best 
performance; you should use weak isolation unless problems are clearly identified. 
Normal isolation also commits active automatic transactions whenever a process 
sends a request to a server process; normal isolation is required in applications 
where both requester and servers lock or update the same records.
If processes coordinate access to the same database records (for example, one 
process inserts a database record, then sends a request to a server process to 
update the record), a record deadlock may occur.
Coordinated access in an unaudited database requires a process to unlock a 
record before sending a server request to access that record. With automatic 
transactions, however, the record lock is held until the transaction is committed and 
the server may be blocked by the locked record.
Strong isolation also commits active automatic transactions whenever a process 
sends a message to a device or process, or before the process updates an 
unaudited file; strong isolation is required only if it is unacceptable to report an 
update that might (with low probability) be later undone by a unilateral abort.
Note that regardless of the isolation setting, automatic transactions are not committed 
if the application program is still holding locks because releasing locks would violate 
the unaudited lock protocol and change the program’s behavior.
Nowait Transactions
To improve the performance of processes using automatic transactions, you can 
configure nowait transactions. In that case, AutoTMF issues the ENDTRANSACTION 
call but does not wait for the transaction to complete. A nowait commit allows the 
process to continue with other work while the transaction commits in parallel.
For example, when server processes reply after making database updates, automatic 
transactions are committed. If you do not require servers to wait for commit processing, 
you can improve interactive response time, usually by a few tenths of a second.










