fix incorrectly use while update sys_recovery_scn
This commit is contained in:
@ -56,7 +56,7 @@ int ObLSRecoveryReportor::init()
|
||||
} else if (OB_ISNULL(GCTX.sql_proxy_)) {
|
||||
ret = OB_ERR_UNEXPECTED;
|
||||
LOG_WARN("sql proxy is null", KR(ret));
|
||||
} else if (OB_FAIL(create(thread_cnt, "TeRec"))) {
|
||||
} else if (OB_FAIL(create(thread_cnt, "LSRecRep"))) {
|
||||
LOG_WARN("failed to create tenant recovery stat thread",
|
||||
KR(ret), K(thread_cnt));
|
||||
}
|
||||
@ -122,7 +122,8 @@ void ObLSRecoveryReportor::run2()
|
||||
LOG_WARN("not init", KR(ret));
|
||||
} else {
|
||||
ObThreadCondGuard guard(get_cond());
|
||||
const int64_t idle_time = ObTenantRoleTransitionConstants::TENANT_INFO_REFRESH_TIME_US;
|
||||
//const int64_t idle_time = ObTenantRoleTransitionConstants::TENANT_INFO_REFRESH_TIME_US;
|
||||
const int64_t idle_time = 500 * 1000;
|
||||
const uint64_t meta_tenant_id = gen_meta_tenant_id(tenant_id_);
|
||||
while (!stop_) {
|
||||
if (OB_ISNULL(GCTX.schema_service_)) {
|
||||
|
@ -1793,9 +1793,9 @@ int ObRecoveryLSHelper::report_tenant_sys_recovery_scn_trans_(const share::SCN &
|
||||
} else if (OB_FAIL(tenant_report->get_tenant_info(tenant_info))) {
|
||||
LOG_WARN("failed to get tenant info", KR(ret));
|
||||
} else if (OB_FAIL(ObAllTenantInfoProxy::update_tenant_sys_recovery_scn_in_trans(
|
||||
tenant_id_, sys_recovery_scn, true, trans))) {
|
||||
tenant_id_, sys_recovery_scn, update_sys_recovery_scn, trans))) {
|
||||
LOG_WARN("failed to update tenant sys recovery scn", KR(ret), K(tenant_id_),
|
||||
K(sys_recovery_scn), K(tenant_info));
|
||||
K(sys_recovery_scn), K(tenant_info), K(update_sys_recovery_scn));
|
||||
} else {
|
||||
//double check sync can not fallback
|
||||
//log will be truncated during the flashback.
|
||||
|
@ -72,7 +72,7 @@ void ObPrimaryLSService::do_work()
|
||||
} else if (OB_FAIL(wait_tenant_schema_and_version_ready_(tenant_id_, DATA_VERSION_4_1_0_0))) {
|
||||
LOG_WARN("failed to wait tenant schema version ready", KR(ret), K(tenant_id_), K(DATA_CURRENT_VERSION));
|
||||
} else {
|
||||
int64_t idle_time_us = 100 * 1000L;
|
||||
int64_t idle_time_us = 500 * 1000L;
|
||||
int tmp_ret = OB_SUCCESS;
|
||||
const uint64_t thread_idx = get_thread_idx();
|
||||
share::schema::ObTenantSchema tenant_schema;
|
||||
|
@ -64,7 +64,7 @@ void ObTenantInfoReportor::do_work()
|
||||
ret = OB_NOT_INIT;
|
||||
LOG_WARN("not init", K(ret));
|
||||
} else {
|
||||
int64_t idle_time_us = 100 * 1000L;
|
||||
int64_t idle_time_us = 500 * 1000L;
|
||||
while (!has_set_stop()) {
|
||||
ObCurTraceId::init(GCONF.self_addr_);
|
||||
if (is_sys_tenant(tenant_id_)) {
|
||||
|
@ -833,7 +833,8 @@ int ObAllTenantInfoProxy::update_tenant_sys_recovery_scn_in_trans(
|
||||
"update %s set sys_recovery_scn = %lu ",
|
||||
OB_ALL_TENANT_INFO_TNAME, sys_recovery_scn.get_val_for_inner_table_field()))) {
|
||||
LOG_WARN("failed to assign sql", KR(ret), K(tenant_id), K(sys_recovery_scn), K(sql));
|
||||
} else if (update_sync_scn && OB_FAIL(sql.append_fmt(", sync_scn = %lu ",
|
||||
} else if (update_sync_scn && OB_FAIL(sql.append_fmt(", sync_scn = %lu, replayable_scn = %lu ",
|
||||
sys_recovery_scn.get_val_for_inner_table_field(),
|
||||
sys_recovery_scn.get_val_for_inner_table_field()))) {
|
||||
LOG_WARN("failed to append sql", KR(ret), K(sys_recovery_scn), K(sql));
|
||||
} else if (OB_FAIL(trans.write(exec_tenant_id, sql.ptr(), affected_rows))) {
|
||||
|
Reference in New Issue
Block a user