From: Gary Kotton Date: Sun, 6 Jan 2013 07:22:45 +0000 (+0000) Subject: Add common support for database configuration X-Git-Url: https://review.fuel-infra.org/gitweb?a=commitdiff_plain;h=be3b5dcd6ddaae809ef1b1e18bf47703deaf74a8;p=openstack-build%2Fneutron-build.git Add common support for database configuration Fixes bug 1096537 Change-Id: I9b7dbc08ae709af81ca968857f7028c150d2c7e5 --- diff --git a/quantum/db/api.py b/quantum/db/api.py index a5eefe856..1c43231bc 100644 --- a/quantum/db/api.py +++ b/quantum/db/api.py @@ -32,11 +32,39 @@ from sqlalchemy.interfaces import PoolListener from sqlalchemy.orm import sessionmaker from quantum.db import model_base +from quantum.openstack.common import cfg from quantum.openstack.common import log as logging LOG = logging.getLogger(__name__) +database_opts = [ + cfg.StrOpt('sql_connection', default='sqlite://', + help=_('The SQLAlchemy connection string used to connect to ' + 'the database')), + cfg.IntOpt('sql_max_retries', default=-1, + help=_('Database reconnection retry times')), + cfg.IntOpt('reconnect_interval', default=2, + help=_('Database reconnection interval in seconds')), + cfg.IntOpt('sql_min_pool_size', + default=1, + help=_("Minimum number of SQL connections to keep open in a " + "pool")), + cfg.IntOpt('sql_max_pool_size', + default=5, + help=_("Maximum number of SQL connections to keep open in a " + "pool")), + cfg.IntOpt('sql_idle_timeout', + default=3600, + help=_("Timeout in seconds before idle sql connections are " + "reaped")), + cfg.BoolOpt('sql_dbpool_enable', + default=False, + help=_("Enable the use of eventlet's db_pool for MySQL")), +] + +cfg.CONF.register_opts(database_opts, "DATABASE") + _ENGINE = None _MAKER = None BASE = model_base.BASEV2 @@ -75,16 +103,15 @@ class SqliteForeignKeysListener(PoolListener): dbapi_con.execute('pragma foreign_keys=ON') -def configure_db(options): +def configure_db(): """ Establish the database, create an engine if needed, and register the models. - - :param options: Mapping of configuration options """ global _ENGINE if not _ENGINE: - connection_dict = sql.engine.url.make_url(options['sql_connection']) + sql_connection = cfg.CONF.DATABASE.sql_connection + connection_dict = sql.engine.url.make_url(sql_connection) engine_args = { 'pool_recycle': 3600, 'echo': False, @@ -94,36 +121,35 @@ def configure_db(options): if 'mysql' in connection_dict.drivername: engine_args['listeners'] = [MySQLPingListener()] if (MySQLdb is not None and - options['sql_dbpool_enable']): + cfg.CONF.DATABASE.sql_dbpool_enable): pool_args = { 'db': connection_dict.database, 'passwd': connection_dict.password or '', 'host': connection_dict.host, 'user': connection_dict.username, - 'min_size': options['sql_min_pool_size'], - 'max_size': options['sql_max_pool_size'], - 'max_idle': options['sql_idle_timeout'] + 'min_size': cfg.CONF.DATABASE.sql_min_pool_size, + 'max_size': cfg.CONF.DATABASE.sql_max_pool_size, + 'max_idle': cfg.CONF.DATABASE.sql_idle_timeout } creator = db_pool.ConnectionPool(MySQLdb, **pool_args) engine_args['creator'] = creator.create - if (MySQLdb is None and options['sql_dbpool_enable']): + if (MySQLdb is None and cfg.CONF.DATABASE.sql_dbpool_enable): LOG.warn(_("Eventlet connection pooling will not work without " "python-mysqldb!")) if 'sqlite' in connection_dict.drivername: engine_args['listeners'] = [SqliteForeignKeysListener()] - if options['sql_connection'] == "sqlite://": + if sql_connection == "sqlite://": engine_args["connect_args"] = {'check_same_thread': False} - _ENGINE = create_engine(options['sql_connection'], **engine_args) + _ENGINE = create_engine(sql_connection, **engine_args) sql.event.listen(_ENGINE, 'checkin', greenthread_yield) - base = options.get('base', BASE) - if not register_models(base): + if not register_models(): if 'reconnect_interval' in options: - remaining = options.get('sql_max_retries', -1) - reconnect_interval = options['reconnect_interval'] - retry_registration(remaining, reconnect_interval, base) + remaining = cfg.CONF.DATABASE.sql_max_retries + reconnect_interval = cfg.CONF.DATABASE.reconnect_interval + retry_registration(remaining, reconnect_interval) def clear_db(base=BASE): diff --git a/quantum/db/db_base_plugin_v2.py b/quantum/db/db_base_plugin_v2.py index a332f842f..1324d2b33 100644 --- a/quantum/db/db_base_plugin_v2.py +++ b/quantum/db/db_base_plugin_v2.py @@ -73,8 +73,7 @@ class QuantumDbPluginV2(quantum_plugin_base_v2.QuantumPluginBaseV2): # must override __init__ and setup the database # and not call into this class's __init__. # This connection is setup as memory for the tests. - db.configure_db({'sql_connection': "sqlite:///:memory:", - 'base': models_v2.model_base.BASEV2}) + db.configure_db() def _get_tenant_id_for_create(self, context, resource): if context.is_admin and 'tenant_id' in resource: diff --git a/quantum/plugins/bigswitch/plugin.py b/quantum/plugins/bigswitch/plugin.py index e7099acf6..67b41dff8 100644 --- a/quantum/plugins/bigswitch/plugin.py +++ b/quantum/plugins/bigswitch/plugin.py @@ -66,28 +66,6 @@ from quantum.plugins.bigswitch.version import version_string_with_vcs LOG = logging.getLogger(__name__) -database_opts = [ - cfg.StrOpt('sql_connection', default='sqlite://'), - cfg.IntOpt('sql_max_retries', default=-1), - cfg.IntOpt('reconnect_interval', default=2), - cfg.IntOpt('sql_min_pool_size', - default=1, - help="Minimum number of SQL connections to keep open in a " - "pool"), - cfg.IntOpt('sql_max_pool_size', - default=5, - help="Maximum number of SQL connections to keep open in a " - "pool"), - cfg.IntOpt('sql_idle_timeout', - default=3600, - help="Timeout in seconds before idle sql connections are " - "reaped"), - cfg.BoolOpt('sql_dbpool_enable', - default=False, - help="Enable the use of eventlet's db_pool for MySQL"), -] - - restproxy_opts = [ cfg.StrOpt('servers', default='localhost:8800'), cfg.StrOpt('serverauth', default='username:password'), @@ -97,7 +75,6 @@ restproxy_opts = [ ] -cfg.CONF.register_opts(database_opts, "DATABASE") cfg.CONF.register_opts(restproxy_opts, "RESTPROXY") @@ -277,15 +254,7 @@ class QuantumRestProxyV2(db_base_plugin_v2.QuantumDbPluginV2): version_string_with_vcs()) # init DB, proxy's persistent store defaults to in-memory sql-lite DB - options = {"sql_connection": "%s" % cfg.CONF.DATABASE.sql_connection, - "sql_max_retries": cfg.CONF.DATABASE.sql_max_retries, - "reconnect_interval": cfg.CONF.DATABASE.reconnect_interval, - "base": models_v2.model_base.BASEV2, - "sql_min_pool_size": cfg.CONF.DATABASE.sql_min_pool_size, - "sql_max_pool_size": cfg.CONF.DATABASE.sql_max_pool_size, - "sql_idle_timeout": cfg.CONF.DATABASE.sql_idle_timeout, - "sql_dbpool_enable": cfg.CONF.DATABASE.sql_dbpool_enable} - db.configure_db(options) + db.configure_db() # 'servers' is the list of network controller REST end-points # (used in order specified till one suceeds, and it is sticky diff --git a/quantum/plugins/linuxbridge/common/config.py b/quantum/plugins/linuxbridge/common/config.py index 6abc2c353..e4ef3be58 100644 --- a/quantum/plugins/linuxbridge/common/config.py +++ b/quantum/plugins/linuxbridge/common/config.py @@ -33,27 +33,6 @@ vlan_opts = [ "or "), ] -database_opts = [ - cfg.StrOpt('sql_connection', default='sqlite://'), - cfg.IntOpt('sql_max_retries', default=-1), - cfg.IntOpt('reconnect_interval', default=2), - cfg.IntOpt('sql_min_pool_size', - default=1, - help="Minimum number of SQL connections to keep open in a " - "pool"), - cfg.IntOpt('sql_max_pool_size', - default=5, - help="Maximum number of SQL connections to keep open in a " - "pool"), - cfg.IntOpt('sql_idle_timeout', - default=3600, - help="Timeout in seconds before idle sql connections are " - "reaped"), - cfg.BoolOpt('sql_dbpool_enable', - default=False, - help="Enable the use of eventlet's db_pool for MySQL"), -] - bridge_opts = [ cfg.ListOpt('physical_interface_mappings', default=DEFAULT_INTERFACE_MAPPINGS, @@ -67,6 +46,5 @@ agent_opts = [ cfg.CONF.register_opts(vlan_opts, "VLANS") -cfg.CONF.register_opts(database_opts, "DATABASE") cfg.CONF.register_opts(bridge_opts, "LINUX_BRIDGE") cfg.CONF.register_opts(agent_opts, "AGENT") diff --git a/quantum/plugins/linuxbridge/db/l2network_db_v2.py b/quantum/plugins/linuxbridge/db/l2network_db_v2.py index 1c42c71dc..9e6930658 100644 --- a/quantum/plugins/linuxbridge/db/l2network_db_v2.py +++ b/quantum/plugins/linuxbridge/db/l2network_db_v2.py @@ -29,17 +29,7 @@ LOG = logging.getLogger(__name__) def initialize(): - options = { - "sql_connection": cfg.CONF.DATABASE.sql_connection, - "sql_max_retries": cfg.CONF.DATABASE.sql_max_retries, - "reconnect_interval": cfg.CONF.DATABASE.reconnect_interval, - "base": models_v2.model_base.BASEV2, - "sql_min_pool_size": cfg.CONF.DATABASE.sql_min_pool_size, - "sql_max_pool_size": cfg.CONF.DATABASE.sql_max_pool_size, - "sql_idle_timeout": cfg.CONF.DATABASE.sql_idle_timeout, - "sql_dbpool_enable": cfg.CONF.DATABASE.sql_dbpool_enable - } - db.configure_db(options) + db.configure_db() def sync_network_states(network_vlan_ranges): diff --git a/quantum/plugins/metaplugin/common/config.py b/quantum/plugins/metaplugin/common/config.py index 1835ec2ff..6af125efc 100644 --- a/quantum/plugins/metaplugin/common/config.py +++ b/quantum/plugins/metaplugin/common/config.py @@ -18,27 +18,6 @@ from quantum.openstack.common import cfg -database_opts = [ - cfg.StrOpt('sql_connection', default='sqlite://'), - cfg.IntOpt('sql_max_retries', default=-1), - cfg.IntOpt('reconnect_interval', default=2), - cfg.IntOpt('sql_min_pool_size', - default=1, - help="Minimum number of SQL connections to keep open in a " - "pool"), - cfg.IntOpt('sql_max_pool_size', - default=5, - help="Maximum number of SQL connections to keep open in a " - "pool"), - cfg.IntOpt('sql_idle_timeout', - default=3600, - help="Timeout in seconds before idle sql connections are " - "reaped"), - cfg.BoolOpt('sql_dbpool_enable', - default=False, - help="Enable the use of eventlet's db_pool for MySQL"), -] - meta_plugin_opts = [ cfg.StrOpt('plugin_list', default=''), cfg.StrOpt('l3_plugin_list', default=''), @@ -57,6 +36,5 @@ proxy_plugin_opts = [ cfg.StrOpt('auth_region'), ] -cfg.CONF.register_opts(database_opts, "DATABASE") cfg.CONF.register_opts(meta_plugin_opts, "META") cfg.CONF.register_opts(proxy_plugin_opts, "PROXY") diff --git a/quantum/plugins/metaplugin/meta_quantum_plugin.py b/quantum/plugins/metaplugin/meta_quantum_plugin.py index 5f722083a..0af8ab7b7 100644 --- a/quantum/plugins/metaplugin/meta_quantum_plugin.py +++ b/quantum/plugins/metaplugin/meta_quantum_plugin.py @@ -50,16 +50,6 @@ class MetaPluginV2(db_base_plugin_v2.QuantumDbPluginV2, def __init__(self, configfile=None): LOG.debug(_("Start initializing metaplugin")) - options = { - "sql_connection": "%s" % cfg.CONF.DATABASE.sql_connection, - "sql_max_retries": cfg.CONF.DATABASE.sql_max_retries, - "reconnect_interval": cfg.CONF.DATABASE.reconnect_interval, - "base": models_v2.model_base.BASEV2, - "sql_min_pool_size": cfg.CONF.DATABASE.sql_min_pool_size, - "sql_max_pool_size": cfg.CONF.DATABASE.sql_max_pool_size, - "sql_idle_timeout": cfg.CONF.DATABASE.sql_idle_timeout, - "sql_dbpool_enable": cfg.CONF.DATABASE.sql_dbpool_enable - } self.supported_extension_aliases = \ cfg.CONF.META.supported_extension_aliases.split(',') self.supported_extension_aliases += ['flavor', 'router'] @@ -108,7 +98,7 @@ class MetaPluginV2(db_base_plugin_v2.QuantumDbPluginV2, raise exc.Invalid(_('default_l3_flavor %s is not plugin list') % self.default_l3_flavor) - db.configure_db(options) + db.configure_db() self.extension_map = {} if not cfg.CONF.META.extension_map == '': diff --git a/quantum/plugins/metaplugin/proxy_quantum_plugin.py b/quantum/plugins/metaplugin/proxy_quantum_plugin.py index 2ffb50047..b9c3c991e 100644 --- a/quantum/plugins/metaplugin/proxy_quantum_plugin.py +++ b/quantum/plugins/metaplugin/proxy_quantum_plugin.py @@ -33,13 +33,7 @@ class ProxyPluginV2(db_base_plugin_v2.QuantumDbPluginV2, supported_extension_aliases = ["router"] def __init__(self, configfile=None): - options = {"sql_connection": cfg.CONF.DATABASE.sql_connection} - options.update({'base': models_v2.model_base.BASEV2}) - sql_max_retries = cfg.CONF.DATABASE.sql_max_retries - options.update({"sql_max_retries": sql_max_retries}) - reconnect_interval = cfg.CONF.DATABASE.reconnect_interval - options.update({"reconnect_interval": reconnect_interval}) - db.configure_db(options) + db.configure_db() self.quantum = client.Client( username=cfg.CONF.PROXY.admin_user, password=cfg.CONF.PROXY.admin_password, diff --git a/quantum/plugins/nec/common/config.py b/quantum/plugins/nec/common/config.py index 4286ad4bd..36a114171 100644 --- a/quantum/plugins/nec/common/config.py +++ b/quantum/plugins/nec/common/config.py @@ -20,27 +20,6 @@ from quantum.openstack.common import cfg from quantum.openstack.common import rpc -database_opts = [ - cfg.StrOpt('sql_connection', default='sqlite://'), - cfg.IntOpt('sql_max_retries', default=-1), - cfg.IntOpt('reconnect_interval', default=2), - cfg.IntOpt('sql_min_pool_size', - default=1, - help=_("Minimum number of SQL connections to keep open in a " - "pool")), - cfg.IntOpt('sql_max_pool_size', - default=5, - help=_("Maximum number of SQL connections to keep open in a " - "pool")), - cfg.IntOpt('sql_idle_timeout', - default=3600, - help=_("Timeout in seconds before idle sql connections are " - "reaped")), - cfg.BoolOpt('sql_dbpool_enable', - default=False, - help=_("Enable the use of eventlet's db_pool for MySQL")), -] - ovs_opts = [ cfg.StrOpt('integration_bridge', default='br-int'), ] @@ -61,7 +40,6 @@ ofc_opts = [ ] -cfg.CONF.register_opts(database_opts, "DATABASE") cfg.CONF.register_opts(ovs_opts, "OVS") cfg.CONF.register_opts(agent_opts, "AGENT") cfg.CONF.register_opts(ofc_opts, "OFC") diff --git a/quantum/plugins/nec/db/api.py b/quantum/plugins/nec/db/api.py index 4f6326c67..466bf6fd1 100644 --- a/quantum/plugins/nec/db/api.py +++ b/quantum/plugins/nec/db/api.py @@ -30,15 +30,7 @@ OFP_VLAN_NONE = 0xffff def initialize(): - options = {"sql_connection": "%s" % config.DATABASE.sql_connection, - "sql_max_retries": config.DATABASE.sql_max_retries, - "reconnect_interval": config.DATABASE.reconnect_interval, - "base": model_base.BASEV2, - "sql_min_pool_size": config.CONF.DATABASE.sql_min_pool_size, - "sql_max_pool_size": config.CONF.DATABASE.sql_max_pool_size, - "sql_idle_timeout": config.CONF.DATABASE.sql_idle_timeout, - "sql_dbpool_enable": config.CONF.DATABASE.sql_dbpool_enable} - db.configure_db(options) + db.configure_db() def clear_db(base=model_base.BASEV2): diff --git a/quantum/plugins/nicira/nicira_nvp_plugin/QuantumPlugin.py b/quantum/plugins/nicira/nicira_nvp_plugin/QuantumPlugin.py index 024157648..e0dd17e8d 100644 --- a/quantum/plugins/nicira/nicira_nvp_plugin/QuantumPlugin.py +++ b/quantum/plugins/nicira/nicira_nvp_plugin/QuantumPlugin.py @@ -76,16 +76,6 @@ def parse_config(): NVPCluster objects, 'plugin_config' is a dictionary with plugin parameters (currently only 'max_lp_per_bridged_ls'). """ - db_options = { - "sql_connection": "%s" % cfg.CONF.DATABASE.sql_connection, - "sql_max_retries": cfg.CONF.DATABASE.sql_max_retries, - "reconnect_interval": cfg.CONF.DATABASE.reconnect_interval, - "base": models_v2.model_base.BASEV2, - "sql_min_pool_size": cfg.CONF.DATABASE.sql_min_pool_size, - "sql_max_pool_size": cfg.CONF.DATABASE.sql_max_pool_size, - "sql_idle_timeout": cfg.CONF.DATABASE.sql_idle_timeout, - "sql_dbpool_enable": cfg.CONF.DATABASE.sql_dbpool_enable - } nvp_options = cfg.CONF.NVP nvp_conf = config.ClusterConfigOptions(cfg.CONF) cluster_names = config.register_cluster_groups(nvp_conf) @@ -104,7 +94,7 @@ def parse_config(): 'nvp_controller_connection': nvp_conf[cluster_name].nvp_controller_connection, }) LOG.debug(_("Cluster options: %s"), clusters_options) - return db_options, nvp_options, clusters_options + return nvp_options, clusters_options class NVPRpcCallbacks(dhcp_rpc_base.DhcpRpcCallbackMixin): @@ -137,7 +127,7 @@ class NvpPluginV2(db_base_plugin_v2.QuantumDbPluginV2): nvplib.LOG.setLevel(loglevel) NvpApiClient.LOG.setLevel(loglevel) - self.db_opts, self.nvp_opts, self.clusters_opts = parse_config() + self.nvp_opts, self.clusters_opts = parse_config() self.clusters = {} for c_opts in self.clusters_opts: # Password is guaranteed to be the same across all controllers @@ -189,7 +179,7 @@ class NvpPluginV2(db_base_plugin_v2.QuantumDbPluginV2): # otherwise set 1st cluster as default self.default_cluster = self.clusters[first_cluster_name] - db.configure_db(self.db_opts) + db.configure_db() # Extend the fault map self._extend_fault_map() # Set up RPC interface for DHCP agent diff --git a/quantum/plugins/nicira/nicira_nvp_plugin/common/config.py b/quantum/plugins/nicira/nicira_nvp_plugin/common/config.py index f0cd6b608..23459f7a7 100644 --- a/quantum/plugins/nicira/nicira_nvp_plugin/common/config.py +++ b/quantum/plugins/nicira/nicira_nvp_plugin/common/config.py @@ -17,27 +17,6 @@ from quantum.openstack.common import cfg -database_opts = [ - cfg.StrOpt('sql_connection', default='sqlite://'), - cfg.IntOpt('sql_max_retries', default=-1), - cfg.IntOpt('reconnect_interval', default=2), - cfg.IntOpt('sql_min_pool_size', - default=1, - help="Minimum number of SQL connections to keep open in a " - "pool"), - cfg.IntOpt('sql_max_pool_size', - default=5, - help="Maximum number of SQL connections to keep open in a " - "pool"), - cfg.IntOpt('sql_idle_timeout', - default=3600, - help="Timeout in seconds before idle sql connections are " - "reaped"), - cfg.BoolOpt('sql_dbpool_enable', - default=False, - help="Enable the use of eventlet's db_pool for MySQL"), -] - nvp_opts = [ cfg.IntOpt('max_lp_per_bridged_ls', default=64), cfg.IntOpt('max_lp_per_overlay_ls', default=256), @@ -53,7 +32,6 @@ cluster_opts = [ cfg.MultiStrOpt('nvp_controller_connection') ] -cfg.CONF.register_opts(database_opts, "DATABASE") cfg.CONF.register_opts(nvp_opts, "NVP") diff --git a/quantum/plugins/openvswitch/common/config.py b/quantum/plugins/openvswitch/common/config.py index 13548c994..b046da193 100644 --- a/quantum/plugins/openvswitch/common/config.py +++ b/quantum/plugins/openvswitch/common/config.py @@ -21,27 +21,6 @@ DEFAULT_BRIDGE_MAPPINGS = [] DEFAULT_VLAN_RANGES = [] DEFAULT_TUNNEL_RANGES = [] -database_opts = [ - cfg.StrOpt('sql_connection', default='sqlite://'), - cfg.IntOpt('sql_max_retries', default=-1), - cfg.IntOpt('reconnect_interval', default=2), - cfg.IntOpt('sql_min_pool_size', - default=1, - help="Minimum number of SQL connections to keep open in a " - "pool"), - cfg.IntOpt('sql_max_pool_size', - default=5, - help="Maximum number of SQL connections to keep open in a " - "pool"), - cfg.IntOpt('sql_idle_timeout', - default=3600, - help="Timeout in seconds before idle sql connections are " - "reaped"), - cfg.BoolOpt('sql_dbpool_enable', - default=False, - help="Enable the use of eventlet's db_pool for MySQL"), -] - ovs_opts = [ cfg.StrOpt('integration_bridge', default='br-int'), cfg.BoolOpt('enable_tunneling', default=False), @@ -72,6 +51,5 @@ agent_opts = [ ] -cfg.CONF.register_opts(database_opts, "DATABASE") cfg.CONF.register_opts(ovs_opts, "OVS") cfg.CONF.register_opts(agent_opts, "AGENT") diff --git a/quantum/plugins/openvswitch/ovs_db_v2.py b/quantum/plugins/openvswitch/ovs_db_v2.py index dc004650f..a19e875c4 100644 --- a/quantum/plugins/openvswitch/ovs_db_v2.py +++ b/quantum/plugins/openvswitch/ovs_db_v2.py @@ -30,17 +30,7 @@ LOG = logging.getLogger(__name__) def initialize(): - options = { - "sql_connection": cfg.CONF.DATABASE.sql_connection, - "sql_max_retries": cfg.CONF.DATABASE.sql_max_retries, - "reconnect_interval": cfg.CONF.DATABASE.reconnect_interval, - "base": models_v2.model_base.BASEV2, - "sql_min_pool_size": cfg.CONF.DATABASE.sql_min_pool_size, - "sql_max_pool_size": cfg.CONF.DATABASE.sql_max_pool_size, - "sql_idle_timeout": cfg.CONF.DATABASE.sql_idle_timeout, - "sql_dbpool_enable": cfg.CONF.DATABASE.sql_dbpool_enable - } - db.configure_db(options) + db.configure_db() def get_network_binding(session, network_id): diff --git a/quantum/plugins/ryu/common/config.py b/quantum/plugins/ryu/common/config.py index a54ffb73a..a24ffe049 100644 --- a/quantum/plugins/ryu/common/config.py +++ b/quantum/plugins/ryu/common/config.py @@ -17,27 +17,6 @@ from quantum.openstack.common import cfg -database_opts = [ - cfg.StrOpt('sql_connection', default='sqlite://'), - cfg.IntOpt('sql_max_retries', default=-1), - cfg.IntOpt('reconnect_interval', default=2), - cfg.IntOpt('sql_min_pool_size', - default=1, - help=_("Minimum number of SQL connections to keep open in a " - "pool")), - cfg.IntOpt('sql_max_pool_size', - default=5, - help=_("Maximum number of SQL connections to keep open in a " - "pool")), - cfg.IntOpt('sql_idle_timeout', - default=3600, - help=_("Timeout in seconds before idle sql connections are " - "reaped")), - cfg.BoolOpt('sql_dbpool_enable', - default=False, - help=_("Enable the use of eventlet's db_pool for MySQL")), -] - ovs_opts = [ cfg.StrOpt('integration_bridge', default='br-int'), cfg.StrOpt('openflow_controller', default='127.0.0.1:6633'), @@ -57,6 +36,5 @@ agent_opts = [ ] -cfg.CONF.register_opts(database_opts, "DATABASE") cfg.CONF.register_opts(ovs_opts, "OVS") cfg.CONF.register_opts(agent_opts, "AGENT") diff --git a/quantum/plugins/ryu/ryu_quantum_plugin.py b/quantum/plugins/ryu/ryu_quantum_plugin.py index ec9e98b8d..55460a01a 100644 --- a/quantum/plugins/ryu/ryu_quantum_plugin.py +++ b/quantum/plugins/ryu/ryu_quantum_plugin.py @@ -55,17 +55,7 @@ class RyuQuantumPluginV2(db_base_plugin_v2.QuantumDbPluginV2, supported_extension_aliases = ["router"] def __init__(self, configfile=None): - options = { - "sql_connection": "%s" % cfg.CONF.DATABASE.sql_connection, - "sql_max_retries": cfg.CONF.DATABASE.sql_max_retries, - "reconnect_interval": cfg.CONF.DATABASE.reconnect_interval, - "base": models_v2.model_base.BASEV2, - "sql_min_pool_size": cfg.CONF.DATABASE.sql_min_pool_size, - "sql_max_pool_size": cfg.CONF.DATABASE.sql_max_pool_size, - "sql_idle_timeout": cfg.CONF.DATABASE.sql_idle_timeout, - "sql_dbpool_enable": cfg.CONF.DATABASE.sql_dbpool_enable - } - db.configure_db(options) + db.configure_db() self.tunnel_key = db_api_v2.TunnelKey( cfg.CONF.OVS.tunnel_key_min, cfg.CONF.OVS.tunnel_key_max) diff --git a/quantum/tests/unit/cisco/test_network_plugin.py b/quantum/tests/unit/cisco/test_network_plugin.py index 8e3f9fc6f..ca6c2fbf9 100644 --- a/quantum/tests/unit/cisco/test_network_plugin.py +++ b/quantum/tests/unit/cisco/test_network_plugin.py @@ -42,8 +42,7 @@ class CiscoNetworkPluginV2TestCase(test_db_plugin.QuantumDbPluginV2TestCase): def setUp(self): def new_init(): - db.configure_db({'sql_connection': 'sqlite:///:memory:', - 'base': network_models_v2.model_base.BASEV2}) + db.configure_db() with mock.patch.object(network_db_v2, 'initialize', new=new_init): diff --git a/quantum/tests/unit/cisco/test_nexus_plugin.py b/quantum/tests/unit/cisco/test_nexus_plugin.py index 8130f1d3f..eef413eda 100644 --- a/quantum/tests/unit/cisco/test_nexus_plugin.py +++ b/quantum/tests/unit/cisco/test_nexus_plugin.py @@ -53,8 +53,7 @@ class TestCiscoNexusPlugin(unittest.TestCase): self.second_vlan_id = 265 def new_cdb_init(): - db.configure_db({'sql_connection': 'sqlite://', - 'base': network_models_v2.model_base.BASEV2}) + db.configure_db() def new_nexus_init(self): self._client = importutils.import_object(NEXUS_DRIVER) diff --git a/quantum/tests/unit/metaplugin/test_metaplugin.py b/quantum/tests/unit/metaplugin/test_metaplugin.py index ac5575452..4d6fd238e 100644 --- a/quantum/tests/unit/metaplugin/test_metaplugin.py +++ b/quantum/tests/unit/metaplugin/test_metaplugin.py @@ -80,10 +80,7 @@ class MetaQuantumPluginV2Test(unittest.TestCase): self.fake_tenant_id = uuidutils.generate_uuid() self.context = context.get_admin_context() - sql_connection = 'sqlite:///:memory:' - options = {"sql_connection": sql_connection} - options.update({'base': models_v2.model_base.BASEV2}) - db.configure_db(options) + db.configure_db() setup_metaplugin_conf()