Merge "Set DB max_overflow to match thread pool size"
diff --git a/metadata/service/control/cluster.yml b/metadata/service/control/cluster.yml
index 4753725..e296c90 100644
--- a/metadata/service/control/cluster.yml
+++ b/metadata/service/control/cluster.yml
@@ -28,6 +28,7 @@
         name: neutron
         user: neutron
         password: ${_param:mysql_neutron_password}
+        max_overflow: 70
       identity:
         engine: keystone
         region: RegionOne
@@ -55,6 +56,7 @@
         user: openstack
         password: ${_param:rabbitmq_openstack_password}
         virtual_host: '/openstack'
+        executor_thread_pool_size: 70
       compute:
         host: ${_param:cluster_vip_address}
         region: RegionOne
diff --git a/metadata/service/control/container.yml b/metadata/service/control/container.yml
index 367167b..ce89d36 100644
--- a/metadata/service/control/container.yml
+++ b/metadata/service/control/container.yml
@@ -24,6 +24,7 @@
                   name: neutron
                   user: neutron
                   password: ${_param:mysql_neutron_password}
+                  max_overflow: 70
                 identity:
                   engine: keystone
                   region: RegionOne
@@ -40,6 +41,7 @@
                   user: openstack
                   password: ${_param:rabbitmq_openstack_password}
                   virtual_host: '/openstack'
+                  executor_thread_pool_size: 70
                 compute:
                   host: ${_param:nova_service_host}
                   region: RegionOne
diff --git a/metadata/service/control/single.yml b/metadata/service/control/single.yml
index 448d6fe..9275ed3 100644
--- a/metadata/service/control/single.yml
+++ b/metadata/service/control/single.yml
@@ -32,6 +32,7 @@
         name: neutron
         user: neutron
         password: ${_param:mysql_neutron_password}
+        max_overflow: 70
       identity:
         engine: keystone
         region: RegionOne
@@ -59,6 +60,7 @@
         user: openstack
         password: ${_param:rabbitmq_openstack_password}
         virtual_host: '/openstack'
+        executor_thread_pool_size: 70
       compute:
         host: ${_param:single_address}
         region: RegionOne
diff --git a/neutron/files/pike/neutron-server.conf b/neutron/files/pike/neutron-server.conf
index 0188447..bed4834 100644
--- a/neutron/files/pike/neutron-server.conf
+++ b/neutron/files/pike/neutron-server.conf
@@ -678,7 +678,9 @@
 # Size of executor thread pool. (integer value)
 # Deprecated group/name - [DEFAULT]/rpc_thread_pool_size
 #executor_thread_pool_size = 64
-executor_thread_pool_size = 70
+{%- if server.message_queue.executor_thread_pool_size is defined %}
+executor_thread_pool_size = {{ server.message_queue.executor_thread_pool_size }}
+{%- endif %}
 
 # Seconds to wait for a response from a call. (integer value)
 #rpc_response_timeout = 60
@@ -967,7 +969,9 @@
 # Deprecated group/name - [DEFAULT]/sql_max_overflow
 # Deprecated group/name - [DATABASE]/sqlalchemy_max_overflow
 #max_overflow = 50
-max_overflow = 20
+{%- if server.database.max_overflow is defined %}
+max_overflow = {{ server.database.max_overflow }}
+{%- endif %}
 
 # Verbosity of SQL debugging information: 0=None, 100=Everything. (integer
 # value)