diff --git a/manifests/wsgi/apache.pp b/manifests/wsgi/apache.pp index 976b07de..dd695ddc 100644 --- a/manifests/wsgi/apache.pp +++ b/manifests/wsgi/apache.pp @@ -50,7 +50,7 @@ # # [*threads*] # (optional) The number of threads for the vhost. -# Defaults to 1 +# Defaults to 15 # # [*wsgi_process_display_name*] # (optional) Name of the WSGI process display-name. @@ -112,7 +112,7 @@ class ironic::wsgi::apache ( $ssl_crl = undef, $ssl_certs_dir = undef, $wsgi_process_display_name = undef, - $threads = 1, + $threads = 15, $priority = '10', $access_log_file = false, $access_log_format = false, diff --git a/releasenotes/notes/update-threads-to-match-upstream-6fda517d7f6d1448.yaml b/releasenotes/notes/update-threads-to-match-upstream-6fda517d7f6d1448.yaml new file mode 100644 index 00000000..bea42f27 --- /dev/null +++ b/releasenotes/notes/update-threads-to-match-upstream-6fda517d7f6d1448.yaml @@ -0,0 +1,9 @@ +--- +fixes: + - | + Fixes default configuration where only a single concurrent thread was + permitted per WSGI worker process, which does not match the upstream + configuration where threads are enabled per each spawned worker process. + This allows for greater request concurrency to prevent situations where + the webserver may incorrectly return a 500 error due to the server being + unable to process the request in time. diff --git a/spec/classes/ironic_wsgi_apache_spec.rb b/spec/classes/ironic_wsgi_apache_spec.rb index ed2b118a..4c15b2a8 100644 --- a/spec/classes/ironic_wsgi_apache_spec.rb +++ b/spec/classes/ironic_wsgi_apache_spec.rb @@ -14,7 +14,7 @@ describe 'ironic::wsgi::apache' do :path => '/', :servername => facts[:fqdn], :ssl => true, - :threads => 1, + :threads => 15, :user => 'ironic', :workers => facts[:os_workers], :wsgi_daemon_process => 'ironic', @@ -56,7 +56,7 @@ describe 'ironic::wsgi::apache' do :path => '/', :servername => 'dummy.host', :ssl => false, - :threads => 1, + :threads => 15, :user => 'ironic', :workers => 37, :wsgi_daemon_process => 'ironic',