4.4 Multi-Transaction Requests
Some requests cannot execute as one transaction because
- It executes too long (causing lock contention) or
- Resources don’t support a compatible 2-phase commit protocol.
Transaction may run too long because
- It requires display I/O with user
- People or machines are unavailable (hotel reservation system, manager who approves the request)
- It requires long-running real-world actions (get 2 estimates before settling an insurance claim)
Transaction may be required to run independent ACID transactions in subsystems (placing an order, scheduling a shipment, reporting commission)