]> review.fuel-infra Code Review - puppet-modules/puppet-ceilometer.git/commitdiff
Add executor_thread_pool_size
authorJake Yip <jake.yip@unimelb.edu.au>
Wed, 13 Nov 2019 06:33:20 +0000 (17:33 +1100)
committerJake Yip <jake.yip@unimelb.edu.au>
Wed, 13 Nov 2019 06:51:24 +0000 (17:51 +1100)
Change I36324bae39e05dde57b962948f832c22599c13d2 added
executor_thread_pool_size as a new param to oslo::messaging::default,
but that option was not updated in many modules like this one. This
means a user cannot set executor_thread_pool_size, as setting it
anywhere else will throw a duplicate declaration error.

This change update the oslo::messaging::default call accordingly, and
adds an option to set it, similar to Change
Id4a61c39ef6392a3d656952467c756be9e68de91

Change-Id: I446af549752cf4872b98e3320353bd93a8a9ab2f

manifests/init.pp
releasenotes/notes/add_executor_thread_pool_size-6f4ffd7ffd0f117a.yaml [new file with mode: 0644]
spec/classes/ceilometer_init_spec.rb

index ea55381eda3e65b3d020f713bd085d2f34c1880f..2ef2e6f3a50f95035d12889f268fe7cf16b0de78 100644 (file)
 #   (Optional) ensure state for package.
 #   Defaults to 'present'.
 #
+# [*executor_thread_pool_size*]
+#   (optional) Size of executor thread pool when executor is threading or eventlet.
+#   Defaults to $::os_service_default.
+#
 # [*default_transport_url*]
 #   (optional) A URL representing the messaging driver to use and its full
 #   configuration. Transport URLs take the form:
@@ -221,6 +225,7 @@ class ceilometer(
   $notification_topics                = ['notifications'],
   $notification_driver                = $::os_service_default,
   $package_ensure                     = 'present',
+  $executor_thread_pool_size          = $::os_service_default,
   $default_transport_url              = $::os_service_default,
   $rpc_response_timeout               = $::os_service_default,
   $control_exchange                   = $::os_service_default,
@@ -345,9 +350,10 @@ class ceilometer(
   }
 
   oslo::messaging::default { 'ceilometer_config':
-    transport_url        => $default_transport_url,
-    rpc_response_timeout => $rpc_response_timeout,
-    control_exchange     => $control_exchange,
+    executor_thread_pool_size => $executor_thread_pool_size,
+    transport_url             => $default_transport_url,
+    rpc_response_timeout      => $rpc_response_timeout,
+    control_exchange          => $control_exchange,
   }
 
   oslo::cache { 'ceilometer_config':
diff --git a/releasenotes/notes/add_executor_thread_pool_size-6f4ffd7ffd0f117a.yaml b/releasenotes/notes/add_executor_thread_pool_size-6f4ffd7ffd0f117a.yaml
new file mode 100644 (file)
index 0000000..8e674b4
--- /dev/null
@@ -0,0 +1,3 @@
+---
+features:
+    - Add possibility to configure the size of executor thread pool.
index 8d532acc71703928c4ff3948bce7d1c2e61f5748..1600b5e7f0883f1745faf93da33a4fee3e373855 100644 (file)
@@ -105,6 +105,7 @@ describe 'ceilometer' do
     end
 
     it 'configures default transport_url' do
+      is_expected.to contain_ceilometer_config('DEFAULT/executor_thread_pool_size').with_value('<SERVICE DEFAULT>')
       is_expected.to contain_ceilometer_config('DEFAULT/transport_url').with_value('<SERVICE DEFAULT>')
       is_expected.to contain_ceilometer_config('DEFAULT/rpc_response_timeout').with_value('<SERVICE DEFAULT>')
       is_expected.to contain_ceilometer_config('DEFAULT/control_exchange').with_value('<SERVICE DEFAULT>')
@@ -133,13 +134,15 @@ describe 'ceilometer' do
     context 'with overridden transport_url parameter' do
       before {
         params.merge!(
-          :default_transport_url => 'rabbit://rabbit_user:password@localhost:5673',
-          :rpc_response_timeout  => '120',
-          :control_exchange      => 'ceilometer',
+          :executor_thread_pool_size => '128',
+          :default_transport_url     => 'rabbit://rabbit_user:password@localhost:5673',
+          :rpc_response_timeout      => '120',
+          :control_exchange          => 'ceilometer',
         )
       }
 
       it 'configures transport_url' do
+        is_expected.to contain_ceilometer_config('DEFAULT/executor_thread_pool_size').with_value('128')
         is_expected.to contain_ceilometer_config('DEFAULT/transport_url').with_value('rabbit://rabbit_user:password@localhost:5673')
         is_expected.to contain_ceilometer_config('DEFAULT/rpc_response_timeout').with_value('120')
         is_expected.to contain_ceilometer_config('DEFAULT/control_exchange').with_value('ceilometer')