Long-lived transaction
{{No sources|date=October 2015}}
A long-lived transaction is a transaction that spans multiple database transactions. The transaction is considered "long-lived" because its boundaries must, by necessity of business logic, extend past a single database transaction. A long-lived transaction can be thought of as a sequence of database transactions grouped to achieve a single atomic result.
A common example is a multi-step sequence of requests and responses of an interaction with a user through a web client.
A long-lived transaction creates challenges of concurrency control and scalability.
A chief strategy in designing long-lived transactions is optimistic concurrency control with versioning.
See also
Category:Transaction processing
{{software-eng-stub}}