Require that updater_workers be a postive integer

Previously, it was possible for updater_workers to be a negative integer
or zero. This change enforces that updater_workers should be a positive
integer.

Change-Id: Ie40194b406aeedcf8c38a3c273ab768e2b643a5d
This commit is contained in:
Chinemerem 2024-12-13 12:19:25 -08:00 committed by Tim Burke
parent fe7928ea8a
commit fbfdc89df5
2 changed files with 4 additions and 1 deletions

View File

@ -427,7 +427,8 @@ class ObjectUpdater(Daemon):
self.interval = float(conf.get('interval', 300))
self.container_ring = None
self.concurrency = int(conf.get('concurrency', 8))
self.updater_workers = int(conf.get('updater_workers', 1))
self.updater_workers = config_positive_int_value(
conf.get('updater_workers', 1))
if 'slowdown' in conf:
self.logger.warning(
'The slowdown option is deprecated in favor of '

View File

@ -184,6 +184,8 @@ class TestObjectUpdater(unittest.TestCase):
check_bad({'interval': 'foo'})
check_bad({'concurrency': 'bar'})
check_bad({'concurrency': '1.0'})
check_bad({'updater_workers': '0'})
check_bad({'updater_workers': '-1'})
check_bad({'slowdown': 'baz'})
check_bad({'objects_per_second': 'quux'})
check_bad({'max_objects_per_container_per_second': '-0.1'})