diff --git a/worker/two_stage_rsync_provider.go b/worker/two_stage_rsync_provider.go index 18965c9..56d672b 100644 --- a/worker/two_stage_rsync_provider.go +++ b/worker/two_stage_rsync_provider.go @@ -114,9 +114,7 @@ func (p *twoStageRsyncProvider) Options(stage int) ([]string, error) { if !ok { return nil, errors.New("invalid stage 1 profile") } - for _, exc := range stage1Profile { - options = append(options, exc) - } + options = append(options, stage1Profile...) } else if stage == 2 { options = append(options, p.stage2Options...) diff --git a/worker/worker.go b/worker/worker.go index c288b23..398a18b 100644 --- a/worker/worker.go +++ b/worker/worker.go @@ -317,7 +317,8 @@ func (w *Worker) runSchedule() { schedInfo := w.schedule.GetJobs() w.updateSchedInfo(schedInfo) - tick := time.Tick(5 * time.Second) + tick := time.NewTicker(5 * time.Second) + defer tick.Stop() for { select { case jobMsg := <-w.managerChan: @@ -356,7 +357,7 @@ func (w *Worker) runSchedule() { schedInfo = w.schedule.GetJobs() w.updateSchedInfo(schedInfo) - case <-tick: + case <-tick.C: // check schedule every 5 seconds if job := w.schedule.Pop(); job != nil { job.ctrlChan <- jobStart