From 8ebb409ef31ac5850925412b901985d7f0a9b668 Mon Sep 17 00:00:00 2001 From: Rain Date: Thu, 12 Mar 2020 20:17:25 +0800 Subject: [PATCH] fix(scheduler): Candidater's CloudProvider maybe nil Candidater(Host) in Provider Onecloud doesn't have CloudProvider. --- pkg/scheduler/data_manager/candidate_manager.go | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/pkg/scheduler/data_manager/candidate_manager.go b/pkg/scheduler/data_manager/candidate_manager.go index ce5920da27..4ec46e8ff8 100644 --- a/pkg/scheduler/data_manager/candidate_manager.go +++ b/pkg/scheduler/data_manager/candidate_manager.go @@ -227,7 +227,9 @@ func (cm *CandidateManager) GetCandidates(args CandidateGetArgs) ([]core.Candida matchCloudprovider := func(r core.Candidater, managerId string) bool { if managerId != "" { - if r.Getter().Cloudprovider().GetId() == managerId { + cloudProvier := r.Getter().Cloudprovider() + // r who belongs to Provider Onecloud doesn't have cloudprovider + if cloudProvier != nil && cloudProvier.GetId() == managerId { return true } return false