You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
resource_data.go takes not in consideration that the special case of comparing Set can happen not only on the first level but even deeper in the resource attribute tree.
func (d*ResourceData) HasChange(keystring) bool {
o, n:=d.GetChange(key)
// If the type implements the Equal interface, then call that// instead of just doing a reflect.DeepEqual. An example where this is// needed is *Setifeq, ok:=o.(Equal); ok {
return!eq.Equal(n)
}
return!reflect.DeepEqual(o, n)
}
I'm going to lock this issue because it has been closed for 30 days ⏳. This helps our maintainers find and focus on the active issues.
If you have found a problem that seems similar to this, please open a new issue and complete the issue template so we can capture all the details necessary to investigate further.
SDK version
latest Plugin SDK version in master
Relevant SDK source code
resource_data.go
takes not in consideration that the special case of comparingSet
can happen not only on the first level but even deeper in the resource attribute tree.Terraform Configuration Files
AWS ECS Service resource use such kind of schema:
Expected Behavior
If
network_configuration
has no change, Terraform should not try to update the AWS ECS service.Actual Behavior
Terraform tries to update the AWS ECS service always, even without any change in the
network_configuration
.Steps to Reproduce
PR which enhance the
resource_data_test.go
test cases to reproduce the behaviour: https://github.com/oliver-schoenherr/terraform-plugin-sdk/pull/1/filesReferences
hashicorp/terraform-provider-aws#14711
hashicorp/terraform-provider-aws#13658
The text was updated successfully, but these errors were encountered: