TransactionManager Utility
In Openstack we have a lot of code that is creating/allocating some resources (networks, volumes, quotas, etc.) but we don't have a clear way to release such resources in case of failure. Release is currently done manually in "except" block. Such approach leads to more complicated error handling and potential resource leak.
We could implement a utility that will help us to manage such resources and will allow us to simplify existing error handling and fix resource leak issues.
Please see Specification URL for details
Blueprint information
- Status:
- Not started
- Approver:
- Russell Bryant
- Priority:
- Undefined
- Drafter:
- Alexei Kornienko
- Direction:
- Needs approval
- Assignee:
- Alexei Kornienko
- Definition:
- Drafting
- Series goal:
- None
- Implementation:
- Unknown
- Milestone target:
- None
- Started by
- Completed by
Related branches
Related bugs
Sprints
Whiteboard
Discussion from IRC:
<markmc> Alexei_987, with something like this, I think it would make sense to go into Nova first
<markmc> Alexei_987, i.e. give nova-core reviewers the opportunity to give feedback on both the transaction manager itself and how nova uses it
<Alexei_987> markmc: I can also be used in other projects
<markmc> Alexei_987, then, once it's had a bit of use there, we can move it to oslo-incubator and have other projects re-use it
<markmc> Alexei_987, basically, I think nova-core would be a better group to first review the transaction manager
<markmc6> Alexei_987, would be good to double check that other projects don't already have something similar
Gerrit topic: https:/
Addressed by: https:/
Added TransactionManager utility
Addressed by: https:/
Added transactional annotation to _build_instance
Discussion from IRC:
<markmc> Alexei_987, with something like this, I think it would make sense to go into Nova first
<markmc> Alexei_987, i.e. give nova-core reviewers the opportunity to give feedback on both the transaction manager itself and how nova uses it
<Alexei_987> markmc: I can also be used in other projects
<markmc> Alexei_987, then, once it's had a bit of use there, we can move it to oslo-incubator and have other projects re-use it
<markmc> Alexei_987, basically, I think nova-core would be a better group to first review the transaction manager
<markmc6> Alexei_987, would be good to double check that other projects don't already have something similar
Gerrit topic: https:/
Addressed by: https:/
Added TransactionManager utility
Addressed by: https:/
Added transactional annotation to _build_instance
Marking this blueprint as definition: Drafting. If you are still working on this, please re-submit via nova-specs. If not, please mark as obsolete, and add a quick comment to describe why. --johnthetubaguy (20th April 2014)