Add basic retry around switchover (#1510)
* add basic retry around switchover Co-authored-by: Sergey Dudoladov <sergey.dudoladov@gmail.com>
This commit is contained in:
		
							parent
							
								
									ebb3204cdd
								
							
						
					
					
						commit
						53fb540c35
					
				|  | @ -304,8 +304,19 @@ func (c *Cluster) MigrateMasterPod(podName spec.NamespacedName) error { | ||||||
| 	} | 	} | ||||||
| 
 | 
 | ||||||
| 	masterCandidateName := util.NameFromMeta(masterCandidatePod.ObjectMeta) | 	masterCandidateName := util.NameFromMeta(masterCandidatePod.ObjectMeta) | ||||||
| 	if err := c.Switchover(oldMaster, masterCandidateName); err != nil { | 	err = retryutil.Retry(1*time.Minute, 5*time.Minute, | ||||||
| 		return fmt.Errorf("could not failover to pod %q: %v", masterCandidateName, err) | 		func() (bool, error) { | ||||||
|  | 			err := c.Switchover(oldMaster, masterCandidateName) | ||||||
|  | 			if err != nil { | ||||||
|  | 				c.logger.Errorf("could not failover to pod %q: %v", masterCandidateName, err) | ||||||
|  | 				return false, nil | ||||||
|  | 			} | ||||||
|  | 			return true, nil | ||||||
|  | 		}, | ||||||
|  | 	) | ||||||
|  | 
 | ||||||
|  | 	if err != nil { | ||||||
|  | 		return fmt.Errorf("could not migrate master pod: %v", err) | ||||||
| 	} | 	} | ||||||
| 
 | 
 | ||||||
| 	return nil | 	return nil | ||||||
|  |  | ||||||
		Loading…
	
		Reference in New Issue