feat(spanner): support commit options in mutation operations.#10668
Merged
feat(spanner): support commit options in mutation operations.#10668
Conversation
94e351d to
93c6da5
Compare
olavloite
reviewed
Aug 14, 2024
spanner/client.go
Outdated
Comment on lines
+949
to
+952
| var commitOptions CommitOptions | ||
| if ao.commitOptions != nil { | ||
| commitOptions = *ao.commitOptions | ||
| } |
Contributor
There was a problem hiding this comment.
I don't quite understand why this is different depending on whether ao.atLeastOnce is true or not.
spanner/transaction.go
Outdated
Comment on lines
+1862
to
+1863
| // maxCommitDelay is the maximum time that the commit will be delayed by the | ||
| // backend before it is acknowledged. |
Contributor
There was a problem hiding this comment.
(The field here is not maxCommitDelay, but commitOptions)
Suggested change
| // maxCommitDelay is the maximum time that the commit will be delayed by the | |
| // backend before it is acknowledged. | |
| // commitOptions are applied to the Commit request for the writeOnlyTransaction. |
| Insert("Accounts", []string{"AccountId", "Nickname", "Balance"}, []interface{}{int64(2), "Bar", int64(1)}), | ||
| } | ||
| if _, err := client.Apply(ctx, accounts, ApplyAtLeastOnce()); err != nil { | ||
| duration, err := time.ParseDuration("100ms") |
Contributor
There was a problem hiding this comment.
Can we also add mock server tests for both normal read/write transactions and writeAtLeastOnce transactions that verify that the maxCommitDelay that has been set is actually sent to Spanner in both cases? This integration test only shows that setting the option does not break anything, it is not able to determine whether the option was actually sent or not.
olavloite
approved these changes
Aug 14, 2024
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
No description provided.