in controllers/flinkcluster/flinkcluster_converter.go [945:962]
func convertFromSavepoint(jobSpec *v1beta1.JobSpec, jobStatus *v1beta1.JobStatus, revision *v1beta1.RevisionStatus) *string {
switch {
// Updating with FromSavepoint provided
case revision.IsUpdateTriggered() && !util.IsBlank(jobSpec.FromSavepoint):
return jobSpec.FromSavepoint
// Latest savepoint
case jobStatus != nil && jobStatus.SavepointLocation != "":
return &jobStatus.SavepointLocation
// The savepoint from which current job was restored
case jobStatus != nil && jobStatus.FromSavepoint != "":
return &jobStatus.FromSavepoint
}
// Creating for the first time or other situation
if !util.IsBlank(jobSpec.FromSavepoint) {
return jobSpec.FromSavepoint
}
return nil
}