fix meta merge 4016
This commit is contained in:
@ -455,6 +455,7 @@ int ObMediumCompactionScheduleFunc::check_frequency(
|
||||
const int64_t time_interval = (current_time - max_reserved_snapshot) / 2;
|
||||
const int64_t last_major_snapshot_version = tablet->get_last_major_snapshot_version();
|
||||
if (0 >= last_major_snapshot_version) {
|
||||
ret = OB_ERR_UNEXPECTED;
|
||||
LOG_WARN("major sstable should not be empty", K(ret), K(last_major_snapshot_version));
|
||||
} else if (last_major_snapshot_version + time_interval > medium_snapshot) {
|
||||
ret = OB_NO_NEED_MERGE;
|
||||
|
@ -1484,10 +1484,11 @@ int ObAdaptiveMergePolicy::find_adaptive_merge_tables(
|
||||
LOG_INFO("no enough table or no enough rows for meta merge", K(ret),
|
||||
K(scanty_tx_determ_table), K(scanty_inc_row_cnt), K(result), K(PRINT_TS_WRAPPER(table_store_wrapper)));
|
||||
}
|
||||
} else if (result.version_range_.snapshot_version_ < tablet.get_multi_version_start()) {
|
||||
} else if (result.version_range_.snapshot_version_ < tablet.get_multi_version_start()
|
||||
|| result.version_range_.snapshot_version_ <= base_table->get_snapshot_version()) {
|
||||
ret = OB_NO_NEED_MERGE;
|
||||
if (REACH_TENANT_TIME_INTERVAL(30_s)) {
|
||||
LOG_INFO("chosen snapshot is abandoned", K(ret), K(result), K(tablet.get_multi_version_start()));
|
||||
LOG_INFO("chosen snapshot is abandoned", K(ret), K(result), K(tablet.get_multi_version_start()), KPC(base_table));
|
||||
}
|
||||
}
|
||||
|
||||
|
Reference in New Issue
Block a user