Deal with major version in diff.
This commit is contained in:
		
							parent
							
								
									3c4b159d84
								
							
						
					
					
						commit
						3463e8531b
					
				| 
						 | 
					@ -616,17 +616,14 @@ func (c *Cluster) Update(oldSpec, newSpec *acidv1.Postgresql) error {
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	logNiceDiff(c.logger, oldSpec, newSpec)
 | 
						logNiceDiff(c.logger, oldSpec, newSpec)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	if oldSpec.Spec.PostgresqlParam.PgVersion > newSpec.Spec.PostgresqlParam.PgVersion {
 | 
						if IsBiggerPostgresVersion(oldSpec.Spec.PostgresqlParam.PgVersion, c.GetDesiredMajorVersion()) {
 | 
				
			||||||
		c.logger.Warningf("postgresql version change(%q -> %q) has no effect",
 | 
							c.logger.Infof("postgresql version increased (%s -> %s), depending on config manual upgrade needed",
 | 
				
			||||||
			oldSpec.Spec.PostgresqlParam.PgVersion, newSpec.Spec.PostgresqlParam.PgVersion)
 | 
					 | 
				
			||||||
		c.eventRecorder.Eventf(c.GetReference(), v1.EventTypeWarning, "PostgreSQL", "postgresql version change(%q -> %q) has no effect",
 | 
					 | 
				
			||||||
			oldSpec.Spec.PostgresqlParam.PgVersion, newSpec.Spec.PostgresqlParam.PgVersion)
 | 
					 | 
				
			||||||
		// we need that hack to generate statefulset with the old version
 | 
					 | 
				
			||||||
		newSpec.Spec.PostgresqlParam.PgVersion = oldSpec.Spec.PostgresqlParam.PgVersion
 | 
					 | 
				
			||||||
	} else if oldSpec.Spec.PostgresqlParam.PgVersion < newSpec.Spec.PostgresqlParam.PgVersion {
 | 
					 | 
				
			||||||
		c.logger.Infof("postgresql version increased (%q -> %q), major version upgrade can be done manually after StatefulSet Sync",
 | 
					 | 
				
			||||||
			oldSpec.Spec.PostgresqlParam.PgVersion, newSpec.Spec.PostgresqlParam.PgVersion)
 | 
								oldSpec.Spec.PostgresqlParam.PgVersion, newSpec.Spec.PostgresqlParam.PgVersion)
 | 
				
			||||||
		syncStatetfulSet = true
 | 
							syncStatetfulSet = true
 | 
				
			||||||
 | 
						} else {
 | 
				
			||||||
 | 
							c.logger.Infof("postgresql major version unchanged or smaller, no changes needed")
 | 
				
			||||||
 | 
							// sticking with old version, this will also advance GetDesiredVersion next time.
 | 
				
			||||||
 | 
							newSpec.Spec.PostgresqlParam.PgVersion = oldSpec.Spec.PostgresqlParam.PgVersion
 | 
				
			||||||
	}
 | 
						}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	// Service
 | 
						// Service
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
		Loading…
	
		Reference in New Issue