Merge pull request #860 from AudriusButkevicius/ticker

Cleanup temporaries once an hour (fixes #858)
This commit is contained in:
Jakob Borg 2014-10-15 18:07:15 +02:00
commit cd05f1c3d7

View File

@ -84,16 +84,21 @@ func (p *Puller) Serve() {
pullTimer := time.NewTimer(checkPullIntv)
scanTimer := time.NewTimer(time.Millisecond) // The first scan should be done immediately.
cleanTimer := time.NewTicker(time.Hour)
defer func() {
pullTimer.Stop()
scanTimer.Stop()
cleanTimer.Stop()
// TODO: Should there be an actual FolderStopped state?
p.model.setState(p.folder, FolderIdle)
}()
var prevVer uint64
// Clean out old temporaries before we start pulling
p.clean()
// We don't start pulling files until a scan has been completed.
initialScanCompleted := false
@ -128,9 +133,6 @@ loop:
continue
}
// Clean out old temporaries before we start pulling
p.clean()
if debug {
l.Debugln(p, "pulling", prevVer, curVer)
}
@ -197,6 +199,9 @@ loop:
l.Infoln("Completed initial scan (rw) of folder", p.folder)
initialScanCompleted = true
}
// Clean out old temporaries
case <-cleanTimer.C:
p.clean()
}
}
}