Similarityoung commented on code in PR #745:
URL:
https://github.com/apache/incubator-seata-go/pull/745#discussion_r1967169637
##########
pkg/rm/tcc/fence/store/db/sql/tcc_fence_store_sql.go:
##########
@@ -28,20 +28,32 @@ var (
// localTccLogPlaced The enum LocalTccLogPlaced
localTccLogPlaced = " %s "
+ pramPlaceHolder = "%s "
+
// insertLocalTccLog The enum InsertLocalTccLog
insertLocalTccLog = "insert into " + localTccLogPlaced + " (xid,
branch_id, action_name, status, gmt_create, gmt_modified) values ( ?,?,?,?,?,?)"
// queryByBranchIdAndXid The enum QueryByBranchIdAndXid
queryByBranchIdAndXid = "select xid, branch_id, action_name, status,
gmt_create, gmt_modified from " + localTccLogPlaced + " where xid = ? and
branch_id = ? for update"
+ // queryByMdDate The enum QueryByMdDate
+ queryByMdDate = "select xid, branch_id from " + localTccLogPlaced + "
where gmt_modified < ? " +
+ " and status in (" + strconv.Itoa(int(enum.StatusCommitted)) +
" , " + strconv.Itoa(int(enum.StatusRollbacked)) + " , " +
strconv.Itoa(int(enum.StatusSuspended)) + ")"
+
// updateStatusByBranchIdAndXid The enum UpdateStatusByBranchIdAndXid
updateStatusByBranchIdAndXid = "update " + localTccLogPlaced + " set
status = ?, gmt_modified = ? where xid = ? and branch_id = ? and status = ? "
// deleteByBranchIdAndXid The enum DeleteByBranchIdAndXid
deleteByBranchIdAndXid = "delete from " + localTccLogPlaced + " where
xid = ? and branch_id = ? "
+ // deleteByBranchIdsAndXids The enum DeleteByBranchIdsAndXids
+ deleteByBranchIdsAndXids = "delete from " + localTccLogPlaced + " where
(xid,branch_id) in (" + pramPlaceHolder + ")"
Review Comment:
因为我看之前有删除的 sql 语句就是根据 xid 和 branchid 进行删除的。并且之前PrepareFence
方法中,insertTCCFenceLog 失败后也会把他的 xid 和 branchid放入channel 中用于执行删除语句,所以我是根据 xid 和
branchid 来删除的。
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: [email protected]
For queries about this service, please contact Infrastructure at:
[email protected]
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]