-
Notifications
You must be signed in to change notification settings - Fork 8.8k
bugfix: the issue where connection held during the first phase of PostgreSQL cannot be rollback #6825
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
Merged
funky-eyes
merged 6 commits into
apache:2.x
from
xiaoxiangyeyu0:bugfix-xa-timeout-rollback
Sep 9, 2024
Merged
bugfix: the issue where connection held during the first phase of PostgreSQL cannot be rollback #6825
Changes from all commits
Commits
Show all changes
6 commits
Select commit
Hold shift + click to select a range
1d1be20
Fix bug in https://github.com/apache/incubator-seata/issues/6814#even…
dfacfac
bugfix: XA mode transaction timeout and inability to roll back in Pos…
edcf633
bugfix: XA mode transaction timeout and inability to roll back in Pos…
0c120e7
bugfix: XA mode transaction timeout and inability to roll back in Pos…
12ed0c0
bugfix: XA mode transaction timeout and inability to roll back in Pos…
7fe906f
Merge branch '2.x' into bugfix-xa-timeout-rollback
funky-eyes File filter
Filter by extension
Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
There are no files selected for viewing
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
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
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
Oops, something went wrong.
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.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
If the XA transaction is rollback due to timeout, the xaBranchXid here is not null. Should we verify that xid and branchId in the parameter are the same xaBranchXid?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
The ConnectionProxyXA object for rollback is obtained using the xid and branchId from the parameters. Therefore, when xaBranchXid != null, the xid and branchId of xaBranchXid are the same as those in the parameters. Additional validation is only necessary if the ConnectionProxyXA is not obtained using xid and branchId.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
当前的connectionProxyXA是通过xid和branch生成的XAXid去map中进行获取,所以可以保证它们的xid和branch一定是相同的。
The current connectionProxyXA is obtained from the XAXid generated by xid and branch in the map, so it can be guaranteed that their xid and branch must be the same.