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