Progress/400
Product Guide
Transactions
The Progress RDBMS and the Progress/400 DataServer process records differently before a transaction completes or is committed. The differences are as follows:
- In the Progress 4GL, transactions end at the end of the outermost block where an update takes place. When a transaction that updates a DB2/400 database ends successfully, the Progress/400 DataServer sends a COMMIT message to the DB2/400 data manager. If the transaction is interrupted, Progress sends a ROLLBACK message to the DB2/400 RDBMS.
- If the transaction deletes records, the Progress RDBMS views the records as locked until the transaction is complete except when another user attempts to read the record with NO-LOCK, in which case Progress views the record as deleted.
- If the transaction deletes records, Progress/400 views the records as deleted except when another user attempts to insert the record, in which case Progress/400 views them as locked.
This difference is illustrated in Table 2–5, where a Progress transaction deletes RECORD A before the transaction is committed. In this example, RECORD A means a record with a specific key, such as CUSTOMER WHERE CUST-NUM = 300.
Copyright © 2004 Progress Software Corporation www.progress.com Voice: (781) 280-4000 Fax: (781) 280-4095 |