DMC
DMC
> What version are you using? 1.7.0
> 请给我看一下你的branch table的表结构 Please show me the table structure of your branch table https://github.com/apache/incubator-seata/blob/1.7.0/script/server/db/mysql.sql 与官方结构一样
不同线程在同一个事务内修改相同数据:  第一个分支回滚失败:  还查了数据库的binlog,05-11期间只有这两次update:  
sorry for wrong table, this is branch table   CREATE TABLE `branch_table` ( `branch_id` bigint(20) NOT NULL, `xid` varchar(128) NOT NULL, `transaction_id` bigint(20) DEFAULT NULL, `resource_group_id` varchar(32) DEFAULT NULL,...
不知道咋说,用了官方的例子,加了并发的代码,百分百复现     
> 如果你的server用的是1.7,并且gmt_create的精度为6,没有相同资源重入后因为回滚顺序不对导致的脏写问题。 If your server is using 1.7 and gmt_create has a precision of 6, there is no problem with dirty writes due to rollbacks in the wrong order after...
20:17:40.946 INFO --- [tyServerNIOWorker_1_10_16] [rocessor.server.RegTmProcessor] [ onRegTmMessage] [] : TM register success,message:RegisterTMRequest{version='1.7.0', applicationId='dubbo-demo-app', transactionServiceGroup='my_test_tx_group', extraData='ak=null digest=my_test_tx_group,10.167.51.1,1706703460680 timestamp=1706703460680 authVersion=V4 vgroup=my_test_tx_group ip=10.167.51.1 '},channel:[id: 0xf21c4daf, L:/127.0.0.1:8091 - R:/127.0.0.1:62086],client version:1.7.0 20:17:42.997 INFO --- [...
> order_tbl:276 这个数据只被注册了一次3468256129648835479分支,没有额外的分支,他回滚不了,说明没有分支跟他重入同一个数据.你可以尝试用xa模式,还是这个例子,如果没有出现回滚不了的问题.说明修改order_tbl:276这条数据的另有别的地方,没有加上globaltransactional注解导致的 改成了XA,日志变了点,但回滚成功了
> order_tbl:276 这个数据只被注册了一次3468256129648835479分支,没有额外的分支,他回滚不了,说明没有分支跟他重入同一个数据.你可以尝试用xa模式,还是这个例子,如果没有出现回滚不了的问题.说明修改order_tbl:276这条数据的另有别的地方,没有加上globaltransactional注解导致的 回滚报错脏数据的不是order_tbl,是stock_tbl里的count字段,你看stock_tbl:4是不是重入了很多次 用的官方的incubator-seata-samples。。只改了BusinessServiceImpl里的purchase方法的逻辑,以及seata版本到1.7.0 