Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
不争之德
oceanbase
提交
fded9898
O
oceanbase
项目概览
不争之德
/
oceanbase
与 Fork 源项目一致
Fork自
oceanbase / oceanbase
通知
1
Star
1
Fork
0
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
1
列表
看板
标记
里程碑
合并请求
0
DevOps
流水线
流水线任务
计划
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
O
oceanbase
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
1
Issue
1
列表
看板
标记
里程碑
合并请求
0
合并请求
0
Pages
DevOps
DevOps
流水线
流水线任务
计划
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
流水线任务
提交
Issue看板
体验新版 GitCode,发现更多精彩内容 >>
提交
fded9898
编写于
3月 14, 2022
作者:
Z
zx0
提交者:
LINGuanRen
3月 14, 2022
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
fix opensource oldCoverity
上级
150d93bb
变更
2
隐藏空白更改
内联
并排
Showing
2 changed file
with
18 addition
and
13 deletion
+18
-13
src/storage/transaction/ob_trans_service.cpp
src/storage/transaction/ob_trans_service.cpp
+3
-3
src/storage/transaction/ob_xa_trans_service.cpp
src/storage/transaction/ob_xa_trans_service.cpp
+15
-10
未找到文件。
src/storage/transaction/ob_trans_service.cpp
浏览文件 @
fded9898
...
...
@@ -3394,9 +3394,9 @@ OB_INLINE int ObTransService::handle_start_participant_(const ObTransDesc& trans
trans_desc
.
is_can_elr
())))
{
TRANS_LOG
(
WARN
,
"init transaction context error"
,
KR
(
ret
),
K
(
partition
),
K
(
trans_desc
));
}
else
{
part_ctx
->
set_session_id
(
trans_desc
.
get_session_id
());
part_ctx
->
set_proxy_session_id
(
trans_desc
.
get_proxy_session_id
());
part_ctx
->
set_scheduler
(
trans_id
.
get_addr
());
(
void
)
part_ctx
->
set_session_id
(
trans_desc
.
get_session_id
());
(
void
)
part_ctx
->
set_proxy_session_id
(
trans_desc
.
get_proxy_session_id
());
(
void
)
part_ctx
->
set_scheduler
(
trans_id
.
get_addr
());
(
void
)
part_ctx
->
set_trans_app_trace_id_str
(
trans_desc
.
get_trans_app_trace_id_str
());
if
(
OB_FAIL
(
part_ctx
->
start_trans
()))
{
TRANS_LOG
(
WARN
,
"start participant transaction error"
,
KR
(
ret
),
K
(
partition
),
K
(
trans_desc
));
...
...
src/storage/transaction/ob_xa_trans_service.cpp
浏览文件 @
fded9898
...
...
@@ -1948,17 +1948,22 @@ int ObTransService::clear_branch_for_xa_terminate_(
int
ret
=
OB_SUCCESS
;
const
int64_t
tenant_id
=
trans_desc
.
get_tenant_id
();
const
ObXATransID
xid
=
trans_desc
.
get_xid
();
trans_desc
.
set_sche_ctx
(
NULL
);
trans_desc
.
set_trans_end
();
if
(
need_delete_xa_record
&&
OB_FAIL
(
delete_xa_all_tightly_branch
(
tenant_id
,
xid
)))
{
TRANS_LOG
(
WARN
,
"delete all tightly branch from inner table failed"
,
K
(
ret
),
K
(
trans_desc
));
}
if
(
0
==
sche_ctx
->
dec_and_get_xa_ref_count
())
{
// this may be repeated exit
TRANS_LOG
(
INFO
,
"sche ctx going to exit"
,
K
(
xid
));
sche_ctx
->
set_exiting
();
if
(
OB_ISNULL
(
sche_ctx
))
{
ret
=
OB_ERR_UNEXPECTED
;
TRANS_LOG
(
ERROR
,
"unexpected, sche_ctx is null"
,
K
(
ret
),
K
(
trans_desc
));
}
else
{
trans_desc
.
set_sche_ctx
(
NULL
);
trans_desc
.
set_trans_end
();
if
(
need_delete_xa_record
&&
OB_FAIL
(
delete_xa_all_tightly_branch
(
tenant_id
,
xid
)))
{
TRANS_LOG
(
WARN
,
"delete all tightly branch from inner table failed"
,
K
(
ret
),
K
(
trans_desc
));
}
if
(
0
==
sche_ctx
->
dec_and_get_xa_ref_count
())
{
// this may be repeated exit
TRANS_LOG
(
INFO
,
"sche ctx going to exit"
,
K
(
xid
));
sche_ctx
->
set_exiting
();
}
(
void
)
sche_trans_ctx_mgr_
.
revert_trans_ctx
(
sche_ctx
);
}
(
void
)
sche_trans_ctx_mgr_
.
revert_trans_ctx
(
sche_ctx
);
TRANS_LOG
(
INFO
,
"clear branch for xa trans when terminate"
,
K
(
xid
),
K
(
trans_desc
));
return
ret
;
}
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录