diff --git a/packages/flamenco-manager-go/src/flamenco-manager/flamenco/task_timeout_check.go b/packages/flamenco-manager-go/src/flamenco-manager/flamenco/task_timeout_check.go index 3c21cd4d9e48f0bc0bf107a880af63e174de2190..c03ddccb0e484f9268e7e926a5718a5504f8777d 100644 --- a/packages/flamenco-manager-go/src/flamenco-manager/flamenco/task_timeout_check.go +++ b/packages/flamenco-manager-go/src/flamenco-manager/flamenco/task_timeout_check.go @@ -53,7 +53,7 @@ func (self *TaskTimeoutChecker) Go() { self.done_chan, self.done_wg) for _ = range timer { - self.check(db) + self.Check(db) } } @@ -65,7 +65,7 @@ func (self *TaskTimeoutChecker) Close() { log.Debug("TaskTimeoutChecker: shutdown complete.") } -func (self *TaskTimeoutChecker) check(db *mgo.Database) { +func (self *TaskTimeoutChecker) Check(db *mgo.Database) { timeout_threshold := UtcNow().Add(-self.config.ActiveTaskTimeoutInterval) log.Debugf("Failing all active tasks that have not been touched since %s", timeout_threshold) diff --git a/packages/flamenco-manager-go/src/flamenco-manager/main.go b/packages/flamenco-manager-go/src/flamenco-manager/main.go index cd44d366e5e6b499a97ed234bb08b265733af004..bdccb1af1aef876527c49a705eb1b628f8c754d0 100644 --- a/packages/flamenco-manager-go/src/flamenco-manager/main.go +++ b/packages/flamenco-manager-go/src/flamenco-manager/main.go @@ -50,6 +50,14 @@ func http_kick(w http.ResponseWriter, r *http.Request) { fmt.Fprintln(w, "Kicked task downloader") } +func http_timeout(w http.ResponseWriter, r *http.Request) { + mongo_sess := session.Copy() + defer mongo_sess.Close() + task_timeout_checker.Check(mongo_sess.DB("")) + + fmt.Fprintln(w, "Kicked task timeouter") +} + func http_task_update(w http.ResponseWriter, r *auth.AuthenticatedRequest) { mongo_sess := session.Copy() defer mongo_sess.Close() @@ -209,6 +217,7 @@ func main() { router.HandleFunc("/may-i-run/{task-id}", worker_authenticator.Wrap(http_worker_may_run_task)).Methods("GET") router.HandleFunc("/sign-off", worker_authenticator.Wrap(http_worker_sign_off)).Methods("POST") router.HandleFunc("/kick", http_kick) + router.HandleFunc("/timeout", http_timeout) upstream.SendStartupNotification() go task_update_pusher.Go()