From a2acdde088310fb8dabdd50b31be2c889d14085c Mon Sep 17 00:00:00 2001 From: Devananda van der Veen Date: Fri, 9 Nov 2012 09:58:25 -0800 Subject: improve sessions for reservation improve session handling for reservation_(get|destroy) blueprint db-session-cleanup Change-Id: I1b6e9a903ef8c3df7449201a2103dc720cdf0e31 --- nova/db/sqlalchemy/api.py | 15 ++++++++------- 1 file changed, 8 insertions(+), 7 deletions(-) (limited to 'nova') 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) ################### -- cgit