ML2 Driver Synchronization
The ML2 core plugin invokes precommit and postcommit methods on each registered mechanism driver as part of performing create, update, and delete operations on neutron network, subnet, and port resources. Any exception raised by precommit methods results in transaction rollback and an exception returned to the client. But mechanism driver failures during postcommit processing, particularly for update operations, are not robustly handled. A patch late in icehouse changed ML2 to continue calling the remaining mechanism drivers rather than giving up when one fails. But this still leaves the possibility that the state in an external device or controller whose driver failed is left out of sync with the DB state, with no well-defined way to restore this synchronization. This blueprint defines a generic synchronization mechanism in the ML2 plugin to address this issue.
Blueprint information
- Status:
- Complete
- Approver:
- None
- Priority:
- Undefined
- Drafter:
- Robert Kukura
- Direction:
- Needs approval
- Assignee:
- None
- Definition:
- Obsolete
- Series goal:
- None
- Implementation:
- Unknown
- Milestone target:
- None
- Started by
- Completed by
- Armando Migliaccio
Related branches
Related bugs
Sprints
Whiteboard
If someone is interested in pursuing it, this must be re-submitted according to guidelines defined in [1]
[1] http://