From da14703fb4e1a249f47685b29310c4c69441ff08 Mon Sep 17 00:00:00 2001 From: Peter Amstutz Date: Fri, 3 Aug 2018 13:01:49 -0400 Subject: [PATCH] 13961: Separate config for cloudlist_poll_time, nodelist_poll_time, wishlist_poll_time Arvados-DCO-1.1-Signed-off-by: Peter Amstutz --- services/nodemanager/arvnodeman/config.py | 3 +++ services/nodemanager/arvnodeman/launcher.py | 10 +++++++--- 2 files changed, 10 insertions(+), 3 deletions(-) diff --git a/services/nodemanager/arvnodeman/config.py b/services/nodemanager/arvnodeman/config.py index 4fda7e76d6..4857e891a7 100644 --- a/services/nodemanager/arvnodeman/config.py +++ b/services/nodemanager/arvnodeman/config.py @@ -51,6 +51,9 @@ class NodeManagerConfig(ConfigParser.SafeConfigParser): 'Daemon': {'min_nodes': '0', 'max_nodes': '1', 'poll_time': '60', + 'cloudlist_poll_time': '0', + 'nodelist_poll_time': '0', + 'wishlist_poll_time': '0', 'max_poll_time': '300', 'poll_stale_after': '600', 'max_total_price': '0', diff --git a/services/nodemanager/arvnodeman/launcher.py b/services/nodemanager/arvnodeman/launcher.py index 1439c94118..53114b2b23 100644 --- a/services/nodemanager/arvnodeman/launcher.py +++ b/services/nodemanager/arvnodeman/launcher.py @@ -83,16 +83,20 @@ def launch_pollers(config, server_calculator): poll_time = config.getfloat('Daemon', 'poll_time') max_poll_time = config.getint('Daemon', 'max_poll_time') + cloudlist_poll_time = config.getfloat('Daemon', 'cloudlist_poll_time') or config.getfloat('Daemon', 'poll_time') + nodelist_poll_time = config.getfloat('Daemon', 'nodelist_poll_time') or config.getfloat('Daemon', 'poll_time') + wishlist_poll_time = config.getfloat('Daemon', 'wishlist_poll_time') or config.getfloat('Daemon', 'poll_time') + timer = TimedCallBackActor.start(poll_time / 10.0).tell_proxy() cloud_node_poller = CloudNodeListMonitorActor.start( - config.new_cloud_client(), timer, server_calculator, poll_time, max_poll_time).tell_proxy() + config.new_cloud_client(), timer, server_calculator, cloudlist_poll_time, max_poll_time).tell_proxy() arvados_node_poller = ArvadosNodeListMonitorActor.start( - config.new_arvados_client(), timer, poll_time, max_poll_time).tell_proxy() + config.new_arvados_client(), timer, nodelist_poll_time, max_poll_time).tell_proxy() job_queue_poller = JobQueueMonitorActor.start( config.new_arvados_client(), timer, server_calculator, config.getboolean('Arvados', 'jobs_queue'), config.getboolean('Arvados', 'slurm_queue'), - poll_time, max_poll_time + wishlist_poll_time, max_poll_time ).tell_proxy() return timer, cloud_node_poller, arvados_node_poller, job_queue_poller -- 2.30.2