Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
Metz
oceanbase
提交
b307e664
O
oceanbase
项目概览
Metz
/
oceanbase
与 Fork 源项目一致
Fork自
oceanbase / oceanbase
通知
1
Star
0
Fork
0
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
0
列表
看板
标记
里程碑
合并请求
0
DevOps
流水线
流水线任务
计划
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
O
oceanbase
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
0
Issue
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
Pages
DevOps
DevOps
流水线
流水线任务
计划
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
流水线任务
提交
Issue看板
提交
b307e664
编写于
7月 28, 2021
作者:
H
HaHaJeff
提交者:
wangzelin.wzl
7月 28, 2021
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
Support rebuild in leader reconfirm
上级
4acae240
变更
1
隐藏空白更改
内联
并排
Showing
1 changed file
with
16 addition
and
15 deletion
+16
-15
src/storage/ob_partition_migrator.cpp
src/storage/ob_partition_migrator.cpp
+16
-15
未找到文件。
src/storage/ob_partition_migrator.cpp
浏览文件 @
b307e664
...
@@ -5914,18 +5914,17 @@ int ObMigratePrepareTask::try_hold_local_partition()
...
@@ -5914,18 +5914,17 @@ int ObMigratePrepareTask::try_hold_local_partition()
LOG_WARN("failed to get leader", K(ret), "arg", ctx_->replica_op_arg_);
LOG_WARN("failed to get leader", K(ret), "arg", ctx_->replica_op_arg_);
} else if (OB_FAIL(partition->get_role(role))) {
} else if (OB_FAIL(partition->get_role(role))) {
LOG_WARN("failed to get partition role", K(ret), "arg", ctx_->replica_op_arg_);
LOG_WARN("failed to get partition role", K(ret), "arg", ctx_->replica_op_arg_);
} else if (leader.is_valid()
} else if (leader.is_valid() &&
&& leader == MYADDR
leader == MYADDR
// support rebuild in leader reconfirm
// support rebuild in leader reconfirm
&& is_strong_leader(role)
&& partition->get_log_service()->is_leader_active()
//TODO(wait yanmu)
// TODO(wait yanmu)
//&& is_strong_leader(role)
//&& is_strong_leader(role)
&& (ADD_REPLICA_OP == ctx_->replica_op_arg_.type_
&& (ADD_REPLICA_OP == ctx_->replica_op_arg_.type_ || MIGRATE_REPLICA_OP == ctx_->replica_op_arg_.type_ ||
|| MIGRATE_REPLICA_OP == ctx_->replica_op_arg_.type_
FAST_MIGRATE_REPLICA_OP == ctx_->replica_op_arg_.type_ ||
|| FAST_MIGRATE_REPLICA_OP == ctx_->replica_op_arg_.type_
REBUILD_REPLICA_OP == ctx_->replica_op_arg_.type_ ||
|| REBUILD_REPLICA_OP == ctx_->replica_op_arg_.type_
CHANGE_REPLICA_OP == ctx_->replica_op_arg_.type_ ||
|| CHANGE_REPLICA_OP == ctx_->replica_op_arg_.type_
LINK_SHARE_MAJOR_OP == ctx_->replica_op_arg_.type_)) {
|| LINK_SHARE_MAJOR_OP == ctx_->replica_op_arg_.type_)) {
if (REBUILD_REPLICA_OP == ctx_->replica_op_arg_.type_) {
if (REBUILD_REPLICA_OP == ctx_->replica_op_arg_.type_) {
if (OB_FAIL(MIGRATOR.get_partition_service()->turn_off_rebuild_flag(ctx_->replica_op_arg_))) {
if (OB_FAIL(MIGRATOR.get_partition_service()->turn_off_rebuild_flag(ctx_->replica_op_arg_))) {
LOG_WARN("Failed to report_rebuild_replica off", K(ret), "arg", ctx_->replica_op_arg_);
LOG_WARN("Failed to report_rebuild_replica off", K(ret), "arg", ctx_->replica_op_arg_);
...
@@ -8112,9 +8111,11 @@ int ObMigratePostPrepareTask::deal_with_rebuild_partition()
...
@@ -8112,9 +8111,11 @@ int ObMigratePostPrepareTask::deal_with_rebuild_partition()
LOG_WARN("failed to get leader", K(ret), "arg", ctx_->replica_op_arg_);
LOG_WARN("failed to get leader", K(ret), "arg", ctx_->replica_op_arg_);
} else if (OB_FAIL(partition->get_role(role))) {
} else if (OB_FAIL(partition->get_role(role))) {
LOG_WARN("failed to get real role", K(ret), "arg", ctx_->replica_op_arg_);
LOG_WARN("failed to get real role", K(ret), "arg", ctx_->replica_op_arg_);
} else if (leader.is_valid() && leader == MYADDR
} else if (leader.is_valid() &&
// support rebuild in leader reconfirm
leader == MYADDR
&& is_strong_leader(role)) {
// support rebuild in leader reconfirm
&&
partition->get_log_service()->is_leader_active()) { // TODO(wait for yanmu) //&& is_strong_leader(role)) {
if (OB_FAIL(MIGRATOR.get_partition_service()->turn_off_rebuild_flag(ctx_->replica_op_arg_))) {
if (OB_FAIL(MIGRATOR.get_partition_service()->turn_off_rebuild_flag(ctx_->replica_op_arg_))) {
LOG_WARN("Failed to report_rebuild_replica off", K(ret), "arg", ctx_->replica_op_arg_);
LOG_WARN("Failed to report_rebuild_replica off", K(ret), "arg", ctx_->replica_op_arg_);
} else {
} else {
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录