From 50cdee4710ec3fb1c20552dc6536e23077017827 Mon Sep 17 00:00:00 2001 From: Jeremy Stretch Date: Thu, 27 Feb 2025 08:28:10 -0500 Subject: [PATCH] Fix logic for clearing pending jobs on interval change --- netbox/core/signals.py | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/netbox/core/signals.py b/netbox/core/signals.py index 22c20bb5c..79ec5614c 100644 --- a/netbox/core/signals.py +++ b/netbox/core/signals.py @@ -182,7 +182,7 @@ def clear_events_queue(sender, **kwargs): # @receiver(post_save, sender=DataSource) -def enqueue_sync_job(instance, **kwargs): +def enqueue_sync_job(instance, created, **kwargs): """ When a DataSource is saved, check its sync_interval and enqueue a sync job if appropriate. """ @@ -190,9 +190,9 @@ def enqueue_sync_job(instance, **kwargs): if instance.sync_interval: SyncDataSourceJob.enqueue_once(instance, interval=instance.sync_interval) - else: + elif not created: # Delete any previously scheduled recurring jobs for this DataSource - SyncDataSourceJob.get_jobs(instance).filter(sync_interval__isnull=False).delete() + SyncDataSourceJob.get_jobs(instance).filter(interval__isnull=False).delete() @receiver(post_sync)