diff --git a/job.go b/job.go index 0cb4b8b..a371022 100644 --- a/job.go +++ b/job.go @@ -308,6 +308,7 @@ func (j *JobRule) Valid() error { return nil } +// Note: this function did't check the job. func GetJob(group, id string) (job *Job, err error) { job, _, err = GetJobAndRev(group, id) return diff --git a/node/node.go b/node/node.go index da6de2d..bffdccc 100644 --- a/node/node.go +++ b/node/node.go @@ -314,6 +314,13 @@ func (n *Node) groupAddNode(g *cronsun.Group) { n.link.delGroupJob(g.ID, jid) continue } + + if err = job.Valid(); err != nil { + log.Warnf("invalid job[%s][%s]: %s", jl.gname, jid, err.Error()) + n.link.delGroupJob(g.ID, jid) + continue + } + job.Init(n.ID) }