[CP] [FIX] logstream freeze do not set snapshot_version for ddl kv
This commit is contained in:
@ -1468,8 +1468,18 @@ int ObDDLKV::decide_right_boundary()
|
|||||||
LOG_ERROR("tablet memtable mgr of ddl kv is unexpected null", KR(ret), K(ls_id), KPC(this));
|
LOG_ERROR("tablet memtable mgr of ddl kv is unexpected null", KR(ret), K(ls_id), KPC(this));
|
||||||
} else if (OB_FAIL(mgr->freeze_direct_load_memtable(this))) {
|
} else if (OB_FAIL(mgr->freeze_direct_load_memtable(this))) {
|
||||||
LOG_WARN("fail to freeze direct load memtable", K(ret));
|
LOG_WARN("fail to freeze direct load memtable", K(ret));
|
||||||
|
} else if (OB_ISNULL(freezer_)) {
|
||||||
|
ret = OB_ERR_UNEXPECTED;
|
||||||
|
LOG_ERROR("invalid freezer", KR(ret), KPC(this));
|
||||||
|
} else {
|
||||||
|
SCN snapshot_version = freezer_->get_freeze_snapshot_version();
|
||||||
|
if (snapshot_version.is_max() || snapshot_version.is_min() || !snapshot_version.is_valid()) {
|
||||||
|
ret = OB_ERR_UNEXPECTED;
|
||||||
|
LOG_ERROR("invalid snapshot version", KR(ret), K(ls_id), K(snapshot_version), KP(freezer_));
|
||||||
|
} else {
|
||||||
|
set_snapshot_version(snapshot_version);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
return ret;
|
return ret;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -1070,7 +1070,6 @@ int ObFreezer::do_direct_load_memtable_tablet_freeze_(ObITabletMemtable *tablet_
|
|||||||
ObDDLKV *direct_load_memtable = static_cast<ObDDLKV*>(tablet_memtable);
|
ObDDLKV *direct_load_memtable = static_cast<ObDDLKV*>(tablet_memtable);
|
||||||
if (OB_FAIL(direct_load_memtable->decide_right_boundary())) {
|
if (OB_FAIL(direct_load_memtable->decide_right_boundary())) {
|
||||||
STORAGE_LOG(WARN, "freeze direct load memtable failed", KR(ret), K(ls_id), KPC(tablet_memtable));
|
STORAGE_LOG(WARN, "freeze direct load memtable failed", KR(ret), K(ls_id), KPC(tablet_memtable));
|
||||||
} else if (FALSE_IT(direct_load_memtable->set_snapshot_version(get_freeze_snapshot_version()))) {
|
|
||||||
} else {
|
} else {
|
||||||
int64_t read_lock = LSLOCKALL;
|
int64_t read_lock = LSLOCKALL;
|
||||||
int64_t write_lock = 0;
|
int64_t write_lock = 0;
|
||||||
|
Reference in New Issue
Block a user