Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
30 changes: 12 additions & 18 deletions be/src/olap/tablet_meta.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -1012,25 +1012,19 @@ void TabletMeta::_check_mow_rowset_cache_version_size(size_t rowset_cache_versio
rowset_cache_version_size > _rs_metas.size() + _stale_rs_metas.size()) {
std::stringstream ss;
auto rowset_ids = _delete_bitmap->get_rowset_cache_version();
for (const auto& rowset_id : rowset_ids) {
bool found = false;
std::set<std::string> tablet_rowset_ids;
{
std::shared_lock rlock(_meta_lock);
for (auto& rs_meta : _rs_metas) {
if (rs_meta->rowset_id() == rowset_id) {
found = true;
break;
}
}
if (found) {
continue;
tablet_rowset_ids.emplace(rs_meta->rowset_id().to_string());
}
for (auto& rs_meta : _stale_rs_metas) {
if (rs_meta->rowset_id() == rowset_id) {
found = true;
break;
}
tablet_rowset_ids.emplace(rs_meta->rowset_id().to_string());
}
if (!found) {
ss << rowset_id.to_string() << ", ";
}
for (const auto& rowset_id : rowset_ids) {
if (tablet_rowset_ids.find(rowset_id) == tablet_rowset_ids.end()) {
ss << rowset_id << ", ";
}
}
// size(rowset_cache_version) <= size(_rs_metas) + size(_stale_rs_metas) + size(_unused_rs)
Expand Down Expand Up @@ -1412,11 +1406,11 @@ void DeleteBitmap::clear_rowset_cache_version() {
VLOG_DEBUG << "clear agg cache version for tablet=" << _tablet_id;
}

std::set<RowsetId> DeleteBitmap::get_rowset_cache_version() {
std::set<RowsetId> set;
std::set<std::string> DeleteBitmap::get_rowset_cache_version() {
std::set<std::string> set;
std::shared_lock l(_rowset_cache_version_lock);
for (auto& [k, _] : _rowset_cache_version) {
set.insert(k);
set.insert(k.to_string());
}
return set;
}
Expand Down
2 changes: 1 addition & 1 deletion be/src/olap/tablet_meta.h
Original file line number Diff line number Diff line change
Expand Up @@ -582,7 +582,7 @@ class DeleteBitmap {

void clear_rowset_cache_version();

std::set<RowsetId> get_rowset_cache_version();
std::set<std::string> get_rowset_cache_version();

/**
* Calculate diffset with given `key_set`. All entries with keys contained in this delete bitmap but not
Expand Down
Loading