Generalize local transactions to make them the default
The initial local transaction implementation only works within the beginner transaction and, for this reason, is not the default behavior. This blueprint proposes extending the local transaction implementation to allow:
1. Escalation of local transactions to global transactions owned by the TM when transactions are propagated from the beginner to another process such as an ESP. This will allow all transactions to begin life as local transactions and only become global when needed.
2. Single region optimization. Currently all local transactions use 2PC. When a transaction involves only one region, only a single phased commit is required.
3. Make local transactions visible in dtmci.
These 3 enhancements provide the generalizations of local transactions needed to allow this to be the default.
Blueprint information
- Status:
- Not started
- Approver:
- Narendra Goyal
- Priority:
- Undefined
- Drafter:
- John de Roo
- Direction:
- Needs approval
- Assignee:
- John de Roo
- Definition:
- Review
- Series goal:
- None
- Implementation:
- Unknown
- Milestone target:
- None
- Started by
- Completed by