#404 fix using 0 to disable max_deferrals and retry_after

This commit is contained in:
Oliver Gorwits
2018-04-22 17:54:49 +01:00
parent 295d3227ab
commit deafc7bc8f
2 changed files with 6 additions and 1 deletions

View File

@@ -181,6 +181,11 @@ setting('workers')->{'timeout'} = setting('timeout')
if defined setting('timeout')
and !defined setting('workers')->{'timeout'};
# 0 for workers max_deferrals and retry_after is like disabling
# but we need to fake it with special values
setting('workers')->{'max_deferrals'} ||= (2**30);
setting('workers')->{'retry_after'} ||= '100 years';
# schedule expire used to be called expiry
setting('schedule')->{expire} ||= setting('schedule')->{expiry}
if setting('schedule') and exists setting('schedule')->{expiry};

View File

@@ -24,7 +24,7 @@ C<retry_after> when devices will be retried once (disabled if 0/undef passed).
sub skipped {
my ($rs, $backend, $max_deferrals, $retry) = @_;
$backend ||= 'fqdn-undefined';
$max_deferrals ||= 10_000_000; # not really 'disabled'
$max_deferrals ||= (2**30); # not really 'disabled'
$retry ||= '100 years'; # not really 'disabled'
return $rs->correlate('device_skips')->search(undef,{