Transactions in a Distributed Environment (Magic xpa 4.x)
Development within a distributed and multi-user environment like the Web requires caution with data manipulation. On the one hand you need to manage transactions, and on the other hand you need to avoid locking to support concurrency. A Web application can serve thousands of users at the same time all over the globe, and locking a resource can make the application unavailable to some users.
In general, it is good practice to make transactions as short as possible to gain better concurrency. The client in a Web environment is totally disconnected from the server, and as a result, from the database server. Therefore, when the user on the client will actually commit the transaction is an unknown factor. It is also possible that the user button or by moving to a different Web page. In this case, the transaction would be kept open, at least until the context timed out.