lib/resque/scheduler.rb in resque-scheduler-4.2.0 vs lib/resque/scheduler.rb in resque-scheduler-4.2.1
- old
+ new
@@ -55,17 +55,18 @@
begin
@th = Thread.current
# Now start the scheduling part of the loop.
loop do
- if master?
- begin
+ begin
+ if master?
handle_delayed_items
update_schedule if dynamic
- rescue Errno::EAGAIN, Errno::ECONNRESET => e
- log! e.message
end
+ rescue Errno::EAGAIN, Errno::ECONNRESET, Redis::CannotConnectError => e
+ log! e.message
+ release_master_lock
end
poll_sleep
end
rescue Interrupt
@@ -133,10 +134,10 @@
if configured_env.nil? || env_matches?(configured_env)
log! "Scheduling #{name} "
interval_defined = false
interval_types = %w(cron every)
interval_types.each do |interval_type|
- next unless !config[interval_type].nil? && config[interval_type].length > 0
+ next unless !config[interval_type].nil? && !config[interval_type].empty?
args = optionizate_interval_value(config[interval_type])
args = [args, nil, job: true] if args.is_a?(::String)
job = rufus_scheduler.send(interval_type, *args) do
if master?