quote schema names in case they use special characters and remove strings.Builder (#2782)
This commit is contained in:
		
							parent
							
								
									f5e122e8ef
								
							
						
					
					
						commit
						002d0f94a1
					
				|  | @ -1390,18 +1390,18 @@ func (c *Cluster) initPreparedDatabaseRoles() error { | ||||||
| 			preparedSchemas = map[string]acidv1.PreparedSchema{"data": {DefaultRoles: util.True()}} | 			preparedSchemas = map[string]acidv1.PreparedSchema{"data": {DefaultRoles: util.True()}} | ||||||
| 		} | 		} | ||||||
| 
 | 
 | ||||||
| 		var searchPath strings.Builder | 		searchPathArr := []string{constants.DefaultSearchPath} | ||||||
| 		searchPath.WriteString(constants.DefaultSearchPath) |  | ||||||
| 		for preparedSchemaName := range preparedSchemas { | 		for preparedSchemaName := range preparedSchemas { | ||||||
| 			searchPath.WriteString(", " + preparedSchemaName) | 			searchPathArr = append(searchPathArr, fmt.Sprintf("%q", preparedSchemaName)) | ||||||
| 		} | 		} | ||||||
|  | 		searchPath := strings.Join(searchPathArr, ", ") | ||||||
| 
 | 
 | ||||||
| 		// default roles per database
 | 		// default roles per database
 | ||||||
| 		if err := c.initDefaultRoles(defaultRoles, "admin", preparedDbName, searchPath.String(), preparedDB.SecretNamespace); err != nil { | 		if err := c.initDefaultRoles(defaultRoles, "admin", preparedDbName, searchPath, preparedDB.SecretNamespace); err != nil { | ||||||
| 			return fmt.Errorf("could not initialize default roles for database %s: %v", preparedDbName, err) | 			return fmt.Errorf("could not initialize default roles for database %s: %v", preparedDbName, err) | ||||||
| 		} | 		} | ||||||
| 		if preparedDB.DefaultUsers { | 		if preparedDB.DefaultUsers { | ||||||
| 			if err := c.initDefaultRoles(defaultUsers, "admin", preparedDbName, searchPath.String(), preparedDB.SecretNamespace); err != nil { | 			if err := c.initDefaultRoles(defaultUsers, "admin", preparedDbName, searchPath, preparedDB.SecretNamespace); err != nil { | ||||||
| 				return fmt.Errorf("could not initialize default roles for database %s: %v", preparedDbName, err) | 				return fmt.Errorf("could not initialize default roles for database %s: %v", preparedDbName, err) | ||||||
| 			} | 			} | ||||||
| 		} | 		} | ||||||
|  | @ -1412,14 +1412,16 @@ func (c *Cluster) initPreparedDatabaseRoles() error { | ||||||
| 				if err := c.initDefaultRoles(defaultRoles, | 				if err := c.initDefaultRoles(defaultRoles, | ||||||
| 					preparedDbName+constants.OwnerRoleNameSuffix, | 					preparedDbName+constants.OwnerRoleNameSuffix, | ||||||
| 					preparedDbName+"_"+preparedSchemaName, | 					preparedDbName+"_"+preparedSchemaName, | ||||||
| 					constants.DefaultSearchPath+", "+preparedSchemaName, preparedDB.SecretNamespace); err != nil { | 					fmt.Sprintf("%s, %q", constants.DefaultSearchPath, preparedSchemaName), | ||||||
|  | 					preparedDB.SecretNamespace); err != nil { | ||||||
| 					return fmt.Errorf("could not initialize default roles for database schema %s: %v", preparedSchemaName, err) | 					return fmt.Errorf("could not initialize default roles for database schema %s: %v", preparedSchemaName, err) | ||||||
| 				} | 				} | ||||||
| 				if preparedSchema.DefaultUsers { | 				if preparedSchema.DefaultUsers { | ||||||
| 					if err := c.initDefaultRoles(defaultUsers, | 					if err := c.initDefaultRoles(defaultUsers, | ||||||
| 						preparedDbName+constants.OwnerRoleNameSuffix, | 						preparedDbName+constants.OwnerRoleNameSuffix, | ||||||
| 						preparedDbName+"_"+preparedSchemaName, | 						preparedDbName+"_"+preparedSchemaName, | ||||||
| 						constants.DefaultSearchPath+", "+preparedSchemaName, preparedDB.SecretNamespace); err != nil { | 						fmt.Sprintf("%s, %q", constants.DefaultSearchPath, preparedSchemaName), | ||||||
|  | 						preparedDB.SecretNamespace); err != nil { | ||||||
| 						return fmt.Errorf("could not initialize default users for database schema %s: %v", preparedSchemaName, err) | 						return fmt.Errorf("could not initialize default users for database schema %s: %v", preparedSchemaName, err) | ||||||
| 					} | 					} | ||||||
| 				} | 				} | ||||||
|  |  | ||||||
		Loading…
	
		Reference in New Issue