Interesting Sidelights
By getting all locks before transaction Start, you can increase throughput at the thrashing point because blocked transactions hold no locks
- But it assumes you get exactly the locks you need and retries of get-all-locks are cheap
Pure restart policy - abort when there’s a conflict and restart when the conflict disappears
- If aborts are cheap and there’s low contention for other resources, then this policy produces higher throughput before thrashing than a blocking policy
- But response time is greater than a blocking policy