From 7acb092706e64ddce74faff3713dbd56e0ae296c Mon Sep 17 00:00:00 2001 From: Gaius Date: Sun, 24 Apr 2022 11:15:17 +0800 Subject: [PATCH] fix: scheduler config validation (#1274) Signed-off-by: Gaius --- scheduler/config/config.go | 16 ++++++++++++++-- 1 file changed, 14 insertions(+), 2 deletions(-) diff --git a/scheduler/config/config.go b/scheduler/config/config.go index 2768b1981..4dc83d9b3 100644 --- a/scheduler/config/config.go +++ b/scheduler/config/config.go @@ -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") }