This is an automated email from the ASF dual-hosted git repository.
liaoxin pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/doris.git
The following commit(s) were added to refs/heads/master by this push:
new 6de038b51af [chore](rowset writer) print rowset rows number when meet
too many segments (#39091)
6de038b51af is described below
commit 6de038b51af1ad015ab735e81424c9c1937dbe23
Author: hui lai <[email protected]>
AuthorDate: Thu Aug 8 19:47:11 2024 +0800
[chore](rowset writer) print rowset rows number when meet too many segments
(#39091)
---
be/src/olap/rowset/beta_rowset_writer.cpp | 8 ++++----
be/src/olap/rowset/beta_rowset_writer.h | 5 +++++
2 files changed, 9 insertions(+), 4 deletions(-)
diff --git a/be/src/olap/rowset/beta_rowset_writer.cpp
b/be/src/olap/rowset/beta_rowset_writer.cpp
index 4481f3b18c0..f3a0ade24f3 100644
--- a/be/src/olap/rowset/beta_rowset_writer.cpp
+++ b/be/src/olap/rowset/beta_rowset_writer.cpp
@@ -913,9 +913,9 @@ Status BaseBetaRowsetWriter::_check_segment_number_limit() {
if (UNLIKELY(total_segment_num > config::max_segment_num_per_rowset)) {
return Status::Error<TOO_MANY_SEGMENTS>(
"too many segments in rowset. tablet_id:{}, rowset_id:{},
max:{}, "
- "_num_segment:{}, ",
+ "_num_segment:{}, rowset_num_rows:{}",
_context.tablet_id, _context.rowset_id.to_string(),
- config::max_segment_num_per_rowset, _num_segment);
+ config::max_segment_num_per_rowset, _num_segment,
get_rowset_num_rows());
}
return Status::OK();
}
@@ -927,10 +927,10 @@ Status BetaRowsetWriter::_check_segment_number_limit() {
if (UNLIKELY(total_segment_num > config::max_segment_num_per_rowset)) {
return Status::Error<TOO_MANY_SEGMENTS>(
"too many segments in rowset. tablet_id:{}, rowset_id:{},
max:{}, _num_segment:{}, "
- "_segcompacted_point:{}, _num_segcompacted:{}",
+ "_segcompacted_point:{}, _num_segcompacted:{},
rowset_num_rows:{}",
_context.tablet_id, _context.rowset_id.to_string(),
config::max_segment_num_per_rowset, _num_segment,
_segcompacted_point,
- _num_segcompacted);
+ _num_segcompacted, get_rowset_num_rows());
}
return Status::OK();
}
diff --git a/be/src/olap/rowset/beta_rowset_writer.h
b/be/src/olap/rowset/beta_rowset_writer.h
index f8033accfca..e51fccdc291 100644
--- a/be/src/olap/rowset/beta_rowset_writer.h
+++ b/be/src/olap/rowset/beta_rowset_writer.h
@@ -174,6 +174,11 @@ protected:
// build a tmp rowset for load segment to calc delete_bitmap for this
segment
Status _build_tmp(RowsetSharedPtr& rowset_ptr);
+ uint64_t get_rowset_num_rows() {
+ std::lock_guard l(_segid_statistics_map_mutex);
+ return std::accumulate(_segment_num_rows.begin(),
_segment_num_rows.end(), uint64_t(0));
+ }
+
std::atomic<int32_t> _num_segment; // number of consecutive flushed
segments
roaring::Roaring _segment_set; // bitmap set to record flushed segment
id
std::mutex _segment_set_mutex; // mutex for _segment_set
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]