Skip to content

DataExchange: UpdateRevision is not sending Finalized: false in request #3066

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Closed
2 of 3 tasks
johnsonaj opened this issue Apr 17, 2025 · 3 comments · Fixed by #3076
Closed
2 of 3 tasks

DataExchange: UpdateRevision is not sending Finalized: false in request #3066

johnsonaj opened this issue Apr 17, 2025 · 3 comments · Fixed by #3076
Assignees
Labels
bug This issue is a bug. p1 This is a high priority issue

Comments

@johnsonaj
Copy link

Acknowledgements

Describe the bug

When trying to update a "finalized" DataExchange Revision to "de-finalized" the request succeeds but has no change on the revision. We can finalize the revision by setting the Finalized parameter to true but are unable to de-finalize by setting it to false

Regression Issue

  • Select this option if this issue appears to be a regression.

Expected Behavior

UpdateRevision should be able to finalize and de-finalize a revision.

Current Behavior

UpdateRevision is able to finalize a revision when Finalized is set to true but when set to false the request succeeds but has no effect.

logs show that when Finalized is set to false the request is empty

true

{"Finalized":true}
SDK 2025/04/17 10:07:50 DEBUG Response
HTTP/2.0 200 OK

false

{}
SDK 2025/04/17 10:10:11 DEBUG Response
HTTP/2.0 200 OK

Reproduction Steps

given the following config using an already created revision. Setting Finalized to true works. When set to `false the request body is empty. Cloudtrail shows this request working with both values when done in the console.

func main() {
	ctx := context.Background()

	cfg, err := config.LoadDefaultConfig(ctx,
		config.WithRegion("us-west-2"),
		config.WithClientLogMode(aws.LogRequestWithBody|aws.LogResponse),
	)
	if err != nil {
		log.Fatalf("failed to load configuration, %v", err)
	}

	conn := dataexchange.NewFromConfig(cfg)

	input := dataexchange.UpdateRevisionInput{
		RevisionId: aws.String("revision-id"),
		DataSetId:  aws.String("data-set-id"),
		Finalized:  false,
	}

	_, err = conn.UpdateRevision(ctx, &input)
	if err != nil {
		log.Fatalf(err.Error())
	}
}

Possible Solution

No response

Additional Information/Context

Relates hashicorp/terraform-provider-aws#42272

AWS Go SDK V2 Module Versions Used

github.com/aws/aws-sdk-go-v2/service/dataexchange v1.34.2

Compiler and Version used

go1.24.2 darwin/arm64

Operating System and version

macOS 15.4.1

@johnsonaj johnsonaj added bug This issue is a bug. needs-triage This issue or PR still needs to be triaged. labels Apr 17, 2025
@ewbankkit
Copy link

Relates #2162.

@lucix-aws
Copy link
Contributor

lucix-aws commented Apr 18, 2025

We'll just have to patch that field's type to *bool as a breakfix. Those top-level operation inputs are really supposed to always be nullable/pointable anyway, not sure why this one isn't.

@lucix-aws lucix-aws added p1 This is a high priority issue queued This issues is on the AWS team's backlog and removed needs-triage This issue or PR still needs to be triaged. labels Apr 18, 2025
@lucix-aws lucix-aws assigned lucix-aws and Madrigal and unassigned lucix-aws Apr 21, 2025
@lucix-aws lucix-aws removed the queued This issues is on the AWS team's backlog label Apr 21, 2025
Copy link

This issue is now closed. Comments on closed issues are hard for our team to see.
If you need more assistance, please open a new issue that references this one.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug This issue is a bug. p1 This is a high priority issue
Projects
None yet
Development

Successfully merging a pull request may close this issue.

4 participants