Merge "Add HashClient retry options for the dogpile.cache backend"

This commit is contained in:
Zuul 2022-02-20 19:04:42 +00:00 committed by Gerrit Code Review
commit f97c064a4c
3 changed files with 36 additions and 0 deletions

View File

@ -182,6 +182,22 @@
# (Optional) Number of seconds to sleep between each attempt.
# Default to $::os_service_default
#
# [*hashclient_retry_attempts*]
# (Optional) Amount of times a client should be tried
# before it is marked dead and removed from the pool in
# the HashClient's internal mechanisms.
# Default to $::os_service_default
#
# [*hashclient_retry_delay*]
# (Optional) Time in seconds that should pass between
# retry attempts in the HashClient's internal mechanisms.
# Default to $::os_service_default
#
# [*dead_timeout*]
# (Optional) Time in seconds before attempting to add a node
# back in the pool in the HashClient's internal mechanisms.
# Default to $::os_service_default
#
class heat::cache (
$config_prefix = $::os_service_default,
$expiration_time = $::os_service_default,
@ -215,6 +231,9 @@ class heat::cache (
$enable_retry_client = $::os_service_default,
$retry_attempts = $::os_service_default,
$retry_delay = $::os_service_default,
$hashclient_retry_attempts = $::os_service_default,
$hashclient_retry_delay = $::os_service_default,
$dead_timeout = $::os_service_default,
) {
include heat::deps
@ -246,6 +265,9 @@ class heat::cache (
enable_retry_client => $enable_retry_client,
retry_attempts => $retry_attempts,
retry_delay => $retry_delay,
hashclient_retry_attempts => $hashclient_retry_attempts,
hashclient_retry_delay => $hashclient_retry_delay,
dead_timeout => $dead_timeout,
}
heat_config {

View File

@ -0,0 +1,5 @@
---
features:
- |
Add options to configure pymemcache's HashClient retrying mechanisms
(dogpile.cache) backend.

View File

@ -36,6 +36,9 @@ describe 'heat::cache' do
:enable_retry_client => '<SERVICE DEFAULT>',
:retry_attempts => '<SERVICE DEFAULT>',
:retry_delay => '<SERVICE DEFAULT>',
:hashclient_retry_attempts => '<SERVICE DEFAULT>',
:hashclient_retry_delay => '<SERVICE DEFAULT>',
:dead_timeout => '<SERVICE DEFAULT>',
:manage_backend_package => true,
)
is_expected.to contain_heat_config('constraint_validation_cache/caching').with_value('<SERVICE DEFAULT>')
@ -70,6 +73,9 @@ describe 'heat::cache' do
:enable_retry_client => false,
:retry_attempts => 2,
:retry_delay => 0,
:hashclient_retry_attempts => 2,
:hashclient_retry_delay => 1,
:dead_timeout => 60,
:manage_backend_package => false,
:constraint_validation_caching => true,
:constraint_validation_expiration_time => '3600',
@ -107,6 +113,9 @@ describe 'heat::cache' do
:enable_retry_client => false,
:retry_attempts => 2,
:retry_delay => 0,
:hashclient_retry_attempts => 2,
:hashclient_retry_delay => 1,
:dead_timeout => 60,
:manage_backend_package => false,
)
is_expected.to contain_heat_config('constraint_validation_cache/caching').with_value('true')