@@ -128,12 +128,7 @@ func readAlterRole(db QueryAble, d *schema.ResourceData) error {
128
128
alterRoleID := d .Id ()
129
129
alterParameterKey := d .Get ("parameter_key" )
130
130
131
- values := []interface {}{
132
- & roleName ,
133
- & roleParameters ,
134
- }
135
-
136
- err := db .QueryRow (getAlterRoleQuery , d .Get ("role_name" )).Scan (values ... )
131
+ err := db .QueryRow (getAlterRoleQuery , d .Get ("role_name" )).Scan (& roleName , & roleParameters )
137
132
switch {
138
133
case err == sql .ErrNoRows :
139
134
log .Printf ("[WARN] PostgreSQL alter role (%q) not found" , alterRoleID )
@@ -148,16 +143,16 @@ func readAlterRole(db QueryAble, d *schema.ResourceData) error {
148
143
d .Set ("role_name" , roleName )
149
144
d .SetId (generateAlterRoleID (d ))
150
145
151
- for _ , v := range roleParameters {
152
- parameter := string (v )
146
+ parameters_string := strings .TrimPrefix (strings .TrimSuffix (string (roleParameters ), '}' ), '{' )
147
+ parameters = strings .Split (parameters_string , "," )
148
+ for _ , parameter := range parameters {
153
149
parameterKey := strings .Split (parameter , "=" )[0 ]
154
150
parameterValue := strings .Split (parameter , "=" )[1 ]
155
151
if parameterKey == alterParameterKey {
156
152
d .Set ("parameter_key" , parameterKey )
157
153
d .Set ("parameter_value" , parameterValue )
158
154
}
159
155
}
160
-
161
156
return nil
162
157
}
163
158
0 commit comments