From e78392f04ab8b3ae9367f70eb176218c0d055586 Mon Sep 17 00:00:00 2001 From: echel0n Date: Mon, 15 Sep 2014 02:23:11 -0700 Subject: [PATCH] Backlog frequency determined by algo that takes into account daily search frequency to prevent overlap of searches, automatically calculates allowed minimum value that is user-settable --- gui/slick/interfaces/default/config_search.tmpl | 1 + sickbeard/__init__.py | 17 +++++++++++------ sickbeard/webserve.py | 4 ++-- 3 files changed, 14 insertions(+), 8 deletions(-) diff --git a/gui/slick/interfaces/default/config_search.tmpl b/gui/slick/interfaces/default/config_search.tmpl index 98eb6a5..83e327b 100644 --- a/gui/slick/interfaces/default/config_search.tmpl +++ b/gui/slick/interfaces/default/config_search.tmpl @@ -84,6 +84,7 @@ diff --git a/sickbeard/__init__.py b/sickbeard/__init__.py index 0cf4e28..e7ba009 100755 --- a/sickbeard/__init__.py +++ b/sickbeard/__init__.py @@ -192,18 +192,19 @@ ALLOW_HIGH_PRIORITY = False AUTOPOSTPROCESSER_FREQUENCY = None DAILYSEARCH_FREQUENCY = None UPDATE_FREQUENCY = None -BACKLOG_FREQUENCY = None DAILYSEARCH_STARTUP = False +BACKLOG_FREQUENCY = None BACKLOG_STARTUP = False +DEFAULT_AUTOPOSTPROCESSER_FREQUENCY = 10 +DEFAULT_DAILYSEARCH_FREQUENCY = 40 +DEFAULT_BACKLOG_FREQUENCY = 21 +DEFAULT_UPDATE_FREQUENCY = 1 + MIN_AUTOPOSTPROCESSER_FREQUENCY = 1 -MIN_BACKLOG_FREQUENCY = 1440 MIN_DAILYSEARCH_FREQUENCY = 10 +MIN_BACKLOG_FREQUENCY = 10 MIN_UPDATE_FREQUENCY = 1 -DEFAULT_AUTOPOSTPROCESSER_FREQUENCY = 10 -DEFAULT_BACKLOG_FREQUENCY = 10080 -DEFAULT_DAILYSEARCH_FREQUENCY = 60 -DEFAULT_UPDATE_FREQUENCY = 1 BACKLOG_DAYS = 7 @@ -446,6 +447,9 @@ TRAKT_API_KEY = 'abd806c54516240c76e4ebc9c5ccf394' __INITIALIZED__ = False +def get_backlog_cycle_time(): + cycletime = DAILYSEARCH_FREQUENCY * 2 + 7 + return max([cycletime, 720]) def initialize(consoleLogging=True): with INIT_LOCK: @@ -663,6 +667,7 @@ def initialize(consoleLogging=True): if DAILYSEARCH_FREQUENCY < MIN_DAILYSEARCH_FREQUENCY: DAILYSEARCH_FREQUENCY = MIN_DAILYSEARCH_FREQUENCY + MIN_BACKLOG_FREQUENCY = get_backlog_cycle_time() BACKLOG_FREQUENCY = check_setting_int(CFG, 'General', 'backlog_frequency', DEFAULT_BACKLOG_FREQUENCY) if BACKLOG_FREQUENCY < MIN_BACKLOG_FREQUENCY: BACKLOG_FREQUENCY = MIN_BACKLOG_FREQUENCY diff --git a/sickbeard/webserve.py b/sickbeard/webserve.py index 9ea33a7..1ad1f77 100644 --- a/sickbeard/webserve.py +++ b/sickbeard/webserve.py @@ -1616,7 +1616,7 @@ class ConfigSearch(MainHandler): def saveSearch(self, use_nzbs=None, use_torrents=None, nzb_dir=None, sab_username=None, sab_password=None, sab_apikey=None, sab_category=None, sab_host=None, nzbget_username=None, nzbget_password=None, - nzbget_category=None, nzbget_priority=100, nzbget_host=None, nzbget_use_https=None, + nzbget_category=None, nzbget_priority=None, nzbget_host=None, nzbget_use_https=None, backlog_days=None, backlog_frequency=None, dailysearch_frequency=None, nzb_method=None, torrent_method=None, usenet_retention=None, download_propers=None, check_propers_interval=None, allow_high_priority=None, @@ -1666,7 +1666,7 @@ class ConfigSearch(MainHandler): sickbeard.NZBGET_CATEGORY = nzbget_category sickbeard.NZBGET_HOST = config.clean_host(nzbget_host) sickbeard.NZBGET_USE_HTTPS = config.checkbox_to_value(nzbget_use_https) - sickbeard.NZBGET_PRIORITY = int(nzbget_priority) + sickbeard.NZBGET_PRIORITY = config.to_int(nzbget_priority, default=100) sickbeard.TORRENT_USERNAME = torrent_username sickbeard.TORRENT_PASSWORD = torrent_password