-
Notifications
You must be signed in to change notification settings - Fork 8.9k
bugfix: fix log in participant transaction role #5594
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
Conversation
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.
第2点的话,应该是REQUIRED,MANDATORY,SUPPORTS这几种才是直接执行execute,除REQUIRED已经都这么处理了,就REQUIRED是break走到下面,没有判断是否已经存在xid了,所以第二点担心的hook问题,在同一个xid下hook本身就是正确的,以及现在在事务传播中还存在hookbug,比如REQUIRED_NEW,会执行前面那个xid的hook #5076 这个pr修了这个问题,所以第二点应该是不存在这个问题的,每个xid对应自己的hook能执行即可
funky-eyes
left a comment
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.
可以先按这个pr的做法来,将commit和rollback的日志挪到更下层的defaultglobaltransaction类中,避免重复进入template的commit和rollback方法,后续我觉得可以优化下REQUIRED的处理
|
/home/runner/work/seata/seata/tm/src/main/java/io/seata/tm/api/TransactionalTemplate.java:89: Not allow chinese character ! [RegexpSingleline] |
wangliang181230
left a comment
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.
LGTM,修改一下 changelog.md 吧。
funky-eyes
left a comment
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.
LGTM
slievrly
left a comment
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.
LGTM
my change 2 optimize: optimize channel availability thread log output (apache#5563) feature:docker image supports JVM parameter injection (apache#5529) test: add unit test for transaction messages (apache#5637) feature: support trace the transaction link according to the XID (apache#5600) test: add unit test case for ExporterType/RegistryType (apache#5622) optimize: possible conflict between asyncCommitting thread and retryCommitting thread (apache#5623) optimize: possible conflict between asyncCommitting thread and retryCommitting thread (apache#5623) optimize: support case-sensitive attributes for table and column metadata (apache#5553) (+14 squashed commit) Squashed commit: [c97f409] mychange 1 my change 2 optimize: optimize channel availability thread log output (apache#5563) feature:docker image supports JVM parameter injection (apache#5529) test: add unit test for transaction messages (apache#5637) feature: support trace the transaction link according to the XID (apache#5600) test: add unit test case for ExporterType/RegistryType (apache#5622) [8f9bba2] bugfix: fix the `asyncCommit` and `queueToRetryCommit` always failed in db mode (apache#5604) [b2d4584] bugfix: fix log in participant transaction role (apache#5594) [d0d012c] feature: support sqlserver in AT mode (apache#3887) [54bd3ca] feature:support MS SqlServer on the server side of AT mode (apache#4033) [d1e6e6b] bugfix: grpc interceptor xid unbinding problem (apache#5577) [0b49e06] optimize: The common fence clean task is only initiated when useTCCFence is set to true (apache#5576) [7e40e05] bugfix: fix mariadb rollback failed (apache#5558) [ee1ecf7] bugfix: fix oracle insert undolog failed (apache#5556) Signed-off-by: slievrly <[email protected]> [0a1edf3] optimize: update expire gpg key and publish workflow (apache#5549) Signed-off-by: slievrly <[email protected]> [1c8e4bf] bugfix: the log file path was loaded incorrectly (apache#5531) [c73d72d] bugfix: fix GlobalStatus=9 can't be cleared in DB storage mode (apache#5523) [83493d9] optimize: optimize FenceHandler for oracle (apache#5519) [9b35ba9] bugfix: fix the full table scan issue with 'setDate' condition in Oracle 10g (apache#5498)
Ⅰ. Describe what this PR did
在事务传播过程中,如果出现Participant的情况(比如required或者support的),就会加入已存在的事务,当前逻辑在这种情况的处理存在不完善。
目前的改造方式
不足之处讨论
Ⅱ. Does this pull request fix one issue?
fixes #5567
Ⅲ. Why don't you add test cases (unit test/integration test)?
Ⅳ. Describe how to verify it
Ⅴ. Special notes for reviews