fix: scheduler config validation (#1274)

Signed-off-by: Gaius <gaius.qi@gmail.com>
This commit is contained in:
Gaius 2022-04-24 11:15:17 +08:00
parent 341b8610e1
commit 7acb092706
No known key found for this signature in database
GPG Key ID: 8B4E5D1290FA2FFB
1 changed files with 14 additions and 2 deletions

View File

@ -121,6 +121,10 @@ func New() *Config {
// Validate config parameters
func (c *Config) Validate() error {
if c.Server == nil {
return errors.New("server requires parameter server")
}
if c.Server.IP == "" {
return errors.New("server requires parameter ip")
}
@ -149,6 +153,10 @@ func (c *Config) Validate() error {
return errors.New("scheduler requires parameter retryInterval")
}
if c.Scheduler.GC == nil {
return errors.New("scheduler requires parameter gc")
}
if c.Scheduler.GC.PeerGCInterval <= 0 {
return errors.New("scheduler requires parameter peerGCInterval")
}
@ -181,7 +189,7 @@ func (c *Config) Validate() error {
return errors.New("manager requires parameter keepAlive interval")
}
if c.Job.Enable {
if c.Job != nil && c.Job.Enable {
if c.Job.GlobalWorkerNum == 0 {
return errors.New("job requires parameter globalWorkerNum")
}
@ -211,6 +219,10 @@ func (c *Config) Validate() error {
}
}
if c.Storage == nil {
return errors.New("server requires parameter storage")
}
if c.Storage.MaxSize <= 0 {
return errors.New("storage requires parameter maxSize")
}
@ -223,7 +235,7 @@ func (c *Config) Validate() error {
return errors.New("storage requires parameter bufferSize")
}
if c.Metrics.Enable {
if c.Metrics != nil && c.Metrics.Enable {
if c.Metrics.Addr == "" {
return errors.New("metrics requires parameter addr")
}