From 29b0826e1c91aac63f3b41a28a4ff5aebd8f5990 Mon Sep 17 00:00:00 2001 From: Chris Behrens Date: Fri, 16 Nov 2012 04:18:43 +0000 Subject: Add some sqlalchemy tweakables Adds new config options: sql_pool_size sql_max_overflow These are options to tweak the QueuePool that sqlalchemy uses by default to allow for a larger pool size, etc. DocImpact Change-Id: Iae086269182118e12777fa7bbd792a47c847ae99 --- nova/config.py | 7 +++++++ nova/db/sqlalchemy/session.py | 5 +++++ 2 files changed, 12 insertions(+) diff --git a/nova/config.py b/nova/config.py index 888cb4f32..c991e82ea 100644 --- a/nova/config.py +++ b/nova/config.py @@ -218,6 +218,13 @@ global_opts = [ cfg.IntOpt('sql_retry_interval', default=10, help='interval between retries of opening a sql connection'), + cfg.IntOpt('sql_pool_size', + default=None, + help='If set, use this value for pool_size with sqlalchemy'), + cfg.IntOpt('sql_max_overflow', + default=None, + help='If set, use this value for max_overflow with ' + 'sqlalchemy'), cfg.StrOpt('compute_manager', default='nova.compute.manager.ComputeManager', help='full class name for the Manager for compute'), diff --git a/nova/db/sqlalchemy/session.py b/nova/db/sqlalchemy/session.py index 7346760c0..9f9ccf797 100644 --- a/nova/db/sqlalchemy/session.py +++ b/nova/db/sqlalchemy/session.py @@ -273,6 +273,11 @@ def create_engine(sql_connection): 'convert_unicode': True, } + if CONF.sql_pool_size is not None: + engine_args['pool_size'] = CONF.sql_pool_size + if CONF.sql_max_overflow is not None: + engine_args['max_overflow'] = CONF.sql_max_overflow + # Map our SQL debug level to SQLAlchemy's options if CONF.sql_connection_debug >= 100: engine_args['echo'] = 'debug' -- cgit