diff --git a/swh/scheduler/celery_backend/recurrent_visits.py b/swh/scheduler/celery_backend/recurrent_visits.py --- a/swh/scheduler/celery_backend/recurrent_visits.py +++ b/swh/scheduler/celery_backend/recurrent_visits.py @@ -271,9 +271,10 @@ # thread-safe app = build_app(config.get("celery")) scheduler = get_scheduler(**config["scheduler"]) - task_type = scheduler.get_task_type(f"load-{visit_type}") + task_name = f"load-{visit_type}" + task_type = scheduler.get_task_type(task_name) if task_type is None: - raise ValueError(f"Unknown task type: load-{visit_type}") + raise ValueError(f"Unknown task type: {task_name}") policy_cfg = config.get("scheduling_policy", DEFAULT_POLICY_CONFIG) for policies in policy_cfg.values(): @@ -302,6 +303,12 @@ else: logger.warn("Received unexpected message %s in command queue", msg) + # Refresh the task_type object from the database for new parameters, e.g. + # the max queue length + task_type = scheduler.get_task_type(task_name) + if task_type is None: + raise ValueError(f"Unknown task type: {task_name}") + next_iteration = send_visits_for_visit_type( scheduler, app,