You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@doris.apache.org by li...@apache.org on 2020/11/24 05:47:16 UTC
[incubator-doris] branch master updated: [Refactor] Short circuit
return to avoid meaningless loop (#4933)
This is an automated email from the ASF dual-hosted git repository.
lichaoyong pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/incubator-doris.git
The following commit(s) were added to refs/heads/master by this push:
new b7b1d5e [Refactor] Short circuit return to avoid meaningless loop (#4933)
b7b1d5e is described below
commit b7b1d5eb38f46e3a690766ef7b59e98a6a7bef3d
Author: Yingchun Lai <40...@qq.com>
AuthorDate: Tue Nov 24 13:46:50 2020 +0800
[Refactor] Short circuit return to avoid meaningless loop (#4933)
---
be/src/olap/tablet.cpp | 9 ++++-----
be/src/olap/tablet.h | 4 ++++
2 files changed, 8 insertions(+), 5 deletions(-)
diff --git a/be/src/olap/tablet.cpp b/be/src/olap/tablet.cpp
index 5095781..8529892 100644
--- a/be/src/olap/tablet.cpp
+++ b/be/src/olap/tablet.cpp
@@ -1214,11 +1214,10 @@ void Tablet::do_tablet_meta_checkpoint() {
bool Tablet::rowset_meta_is_useful(RowsetMetaSharedPtr rowset_meta) {
ReadLock rdlock(&_meta_lock);
- bool find_rowset_id = false;
bool find_version = false;
for (auto& version_rowset : _rs_version_map) {
if (version_rowset.second->rowset_id() == rowset_meta->rowset_id()) {
- find_rowset_id = true;
+ return true;
}
if (version_rowset.second->contains_version(rowset_meta->version())) {
find_version = true;
@@ -1226,7 +1225,7 @@ bool Tablet::rowset_meta_is_useful(RowsetMetaSharedPtr rowset_meta) {
}
for (auto& inc_version_rowset : _inc_rs_version_map) {
if (inc_version_rowset.second->rowset_id() == rowset_meta->rowset_id()) {
- find_rowset_id = true;
+ return true;
}
if (inc_version_rowset.second->contains_version(rowset_meta->version())) {
find_version = true;
@@ -1234,13 +1233,13 @@ bool Tablet::rowset_meta_is_useful(RowsetMetaSharedPtr rowset_meta) {
}
for (auto& stale_version_rowset : _stale_rs_version_map) {
if (stale_version_rowset.second->rowset_id() == rowset_meta->rowset_id()) {
- find_rowset_id = true;
+ return true;
}
if (stale_version_rowset.second->contains_version(rowset_meta->version())) {
find_version = true;
}
}
- return find_rowset_id || !find_version;
+ return !find_version;
}
bool Tablet::_contains_rowset(const RowsetId rowset_id) {
diff --git a/be/src/olap/tablet.h b/be/src/olap/tablet.h
index 45e146a..b5f3edf 100644
--- a/be/src/olap/tablet.h
+++ b/be/src/olap/tablet.h
@@ -221,6 +221,10 @@ public:
void do_tablet_meta_checkpoint();
+ // Check whether the rowset is useful or not, unuseful rowset can be swept up then.
+ // Rowset which is under tablet's management is useful, i.e. rowset is in
+ // _rs_version_map, _inc_rs_version_map, or _stale_rs_version_map.
+ // Rowset whose version range is not covered by this tablet is also useful.
bool rowset_meta_is_useful(RowsetMetaSharedPtr rowset_meta);
void build_tablet_report_info(TTabletInfo* tablet_info);
---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@doris.apache.org
For additional commands, e-mail: commits-help@doris.apache.org