From 2e35d7177830e16abd3e919510437f48c6691d51 Mon Sep 17 00:00:00 2001 From: Boris Pavlovic Date: Sat, 4 May 2013 23:38:51 +0400 Subject: Session cleanup for db.floating_ip_* methods Session objects shouldn't be used in public db.api methods because db.api should be independent of db implementation. Remove session parameter from: floating_ip_create floating_ip_get_by_fixed_ip_id I didn't remove session parameter from floating_ip_count_by_project because it causes changes in nova.quota. So it will be done in separated patch. Cleanup test for floating_ip_count_by_project removed 3rd parameter (it should be session, but it is not required). blueprint db-session-cleanup Change-Id: Ifdf9edb17746a8e5b486317c917ea69016a2b99d --- nova/db/sqlalchemy/api.py | 16 ++++++---------- nova/tests/test_db_api.py | 3 +-- 2 files changed, 7 insertions(+), 12 deletions(-) diff --git a/nova/db/sqlalchemy/api.py b/nova/db/sqlalchemy/api.py index 9213b36b3..d5f4c8e6f 100644 --- a/nova/db/sqlalchemy/api.py +++ b/nova/db/sqlalchemy/api.py @@ -727,7 +727,7 @@ def floating_ip_bulk_destroy(context, ips): @require_context -def floating_ip_create(context, values, session=None): +def floating_ip_create(context, values): floating_ip_ref = models.FloatingIp() floating_ip_ref.update(values) try: @@ -887,13 +887,10 @@ def floating_ip_get_by_fixed_address(context, fixed_address): @require_context -def floating_ip_get_by_fixed_ip_id(context, fixed_ip_id, session=None): - if not session: - session = get_session() - - return model_query(context, models.FloatingIp, session=session).\ - filter_by(fixed_ip_id=fixed_ip_id).\ - all() +def floating_ip_get_by_fixed_ip_id(context, fixed_ip_id): + return model_query(context, models.FloatingIp).\ + filter_by(fixed_ip_id=fixed_ip_id).\ + all() @require_context @@ -1918,8 +1915,7 @@ def instance_floating_address_get_all(context, instance_uuid): floating_ips = [] for fixed_ip in fixed_ips: - _floating_ips = floating_ip_get_by_fixed_ip_id(context, - fixed_ip['id']) + _floating_ips = floating_ip_get_by_fixed_ip_id(context, fixed_ip['id']) floating_ips += _floating_ips return floating_ips diff --git a/nova/tests/test_db_api.py b/nova/tests/test_db_api.py index e298b7e03..cfed3ab3b 100644 --- a/nova/tests/test_db_api.py +++ b/nova/tests/test_db_api.py @@ -2752,8 +2752,7 @@ class FloatingIpTestCase(test.TestCase, ModelsObjectComparatorMixin): ctxt = context.RequestContext(user_id='a', project_id='abc', is_admin=False) self.assertRaises(exception.NotAuthorized, - db.floating_ip_count_by_project, - ctxt, 'def', 'does_not_matter') + db.floating_ip_count_by_project, ctxt, 'def') def _create_fixed_ip(self, params): default_params = {'address': '192.168.0.1'} -- cgit