diff options
| author | Devananda van der Veen <devananda.vdv@gmail.com> | 2012-11-09 09:58:25 -0800 |
|---|---|---|
| committer | Devananda van der Veen <devananda.vdv@gmail.com> | 2012-11-11 08:57:54 -0800 |
| commit | a2acdde088310fb8dabdd50b31be2c889d14085c (patch) | |
| tree | d53d6127f55ecb9810d41cdd323df96a9d80fbcd /nova | |
| parent | 2fac760e077a9b519b2220a88cff61d31a0d8d1d (diff) | |
| download | nova-a2acdde088310fb8dabdd50b31be2c889d14085c.tar.gz nova-a2acdde088310fb8dabdd50b31be2c889d14085c.tar.xz nova-a2acdde088310fb8dabdd50b31be2c889d14085c.zip | |
improve sessions for reservation
improve session handling for
reservation_(get|destroy)
blueprint db-session-cleanup
Change-Id: I1b6e9a903ef8c3df7449201a2103dc720cdf0e31
Diffstat (limited to 'nova')
| -rw-r--r-- | nova/db/sqlalchemy/api.py | 15 |
1 files changed, 8 insertions, 7 deletions
diff --git a/nova/db/sqlalchemy/api.py b/nova/db/sqlalchemy/api.py index 3b7c17a14..254d8cc4e 100644 --- a/nova/db/sqlalchemy/api.py +++ b/nova/db/sqlalchemy/api.py @@ -2499,9 +2499,8 @@ def quota_usage_update(context, project_id, resource, **kwargs): @require_context -def reservation_get(context, uuid, session=None): - result = model_query(context, models.Reservation, session=session, - read_deleted="no").\ +def reservation_get(context, uuid): + result = model_query(context, models.Reservation, read_deleted="no").\ filter_by(uuid=uuid).\ first() @@ -2527,10 +2526,12 @@ def reservation_create(context, uuid, usage, project_id, resource, delta, @require_admin_context def reservation_destroy(context, uuid): - session = get_session() - with session.begin(): - reservation_ref = reservation_get(context, uuid, session=session) - reservation_ref.delete(session=session) + result = model_query(context, models.Reservation, read_deleted="no").\ + filter_by(uuid=uuid).\ + delete() + + if not result: + raise exception.ReservationNotFound(uuid=uuid) ################### |
