Return python dictionaries from SQLAlchemy driver
Currently Nova utilizes a database abstraction layer (nova.db.api) which, in theory, allows for different backends to be utilized instead of SQLAlchemy. This is an ambitious goal which currently will not work as implemented.
`nova.db.api` contains functions which return the output of `nova.db.
It is for that reason that a decision must be made to either:
a) Return 100% pure python dictionaries containing relevant data
b) Create an additional object abstraction layer for standardized object which can be returned from the `nova.db.api` module
c) Remove the compatibility layer and 100% commit to handling of SQLAlchemy errors at every level of the project
The easiest and most straight-forward solution is (a), but it disallows the use of lazy-loading and other 'efficiencies' that SQLAlchemy offers. (b) is the most difficult and comprehensive option. (c) is not an option in my mind.
Blueprint information
- Status:
- Complete
- Approver:
- Vish Ishaya
- Priority:
- Undefined
- Drafter:
- Nova Database Team
- Direction:
- Approved
- Assignee:
- Nova Database Team
- Definition:
- Obsolete
- Series goal:
- None
- Implementation:
- Unknown
- Milestone target:
- None
- Started by
- Completed by
- Vish Ishaya