This is an automated email from the ASF dual-hosted git repository.
dataroaring 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 147a148364 [refactor](segcompaction) simplify
submit_seg_compaction_task interface (#22387)
147a148364 is described below
commit 147a14836460c98621d69827ec087c3fc5c3aa38
Author: Kaijie Chen <[email protected]>
AuthorDate: Mon Jul 31 13:53:38 2023 +0800
[refactor](segcompaction) simplify submit_seg_compaction_task interface
(#22387)
---
be/src/olap/olap_server.cpp | 9 ++++-----
be/src/olap/rowset/beta_rowset_writer.cpp | 6 ++++--
be/src/olap/rowset/beta_rowset_writer.h | 2 --
be/src/olap/storage_engine.h | 6 +++---
4 files changed, 11 insertions(+), 12 deletions(-)
diff --git a/be/src/olap/olap_server.cpp b/be/src/olap/olap_server.cpp
index dab16000c0..44ec7304e5 100644
--- a/be/src/olap/olap_server.cpp
+++ b/be/src/olap/olap_server.cpp
@@ -54,7 +54,6 @@
#include "olap/cumulative_compaction_policy.h"
#include "olap/data_dir.h"
#include "olap/olap_common.h"
-#include "olap/rowset/beta_rowset_writer.h"
#include "olap/rowset/segcompaction.h"
#include "olap/schema_change.h"
#include "olap/storage_engine.h"
@@ -983,17 +982,17 @@ Status
StorageEngine::submit_compaction_task(TabletSharedPtr tablet, CompactionT
return _submit_compaction_task(tablet, compaction_type, force);
}
-Status StorageEngine::_handle_seg_compaction(BetaRowsetWriter* writer,
+Status StorageEngine::_handle_seg_compaction(SegcompactionWorker* worker,
SegCompactionCandidatesSharedPtr
segments) {
- writer->get_segcompaction_worker().compact_segments(segments);
+ worker->compact_segments(segments);
// return OK here. error will be reported via
BetaRowsetWriter::_segcompaction_status
return Status::OK();
}
-Status StorageEngine::submit_seg_compaction_task(BetaRowsetWriter* writer,
+Status StorageEngine::submit_seg_compaction_task(SegcompactionWorker* worker,
SegCompactionCandidatesSharedPtr segments) {
return _seg_compaction_thread_pool->submit_func(
- std::bind<void>(&StorageEngine::_handle_seg_compaction, this,
writer, segments));
+ std::bind<void>(&StorageEngine::_handle_seg_compaction, this,
worker, segments));
}
Status StorageEngine::process_index_change_task(const TAlterInvertedIndexReq&
request) {
diff --git a/be/src/olap/rowset/beta_rowset_writer.cpp
b/be/src/olap/rowset/beta_rowset_writer.cpp
index 1b30ab8342..551d7bdd7d 100644
--- a/be/src/olap/rowset/beta_rowset_writer.cpp
+++ b/be/src/olap/rowset/beta_rowset_writer.cpp
@@ -396,7 +396,8 @@ Status BetaRowsetWriter::_segcompaction_if_necessary() {
LOG(INFO) << "submit segcompaction task, tablet_id:" <<
_context.tablet_id
<< " rowset_id:" << _context.rowset_id << " segment
num:" << _num_segment
<< ", segcompacted_point:" << _segcompacted_point;
- status =
StorageEngine::instance()->submit_seg_compaction_task(this, segments);
+ status =
StorageEngine::instance()->submit_seg_compaction_task(&_segcompaction_worker,
+
segments);
if (status.ok()) {
return status;
}
@@ -431,7 +432,8 @@ Status
BetaRowsetWriter::_segcompaction_ramaining_if_necessary() {
LOG(INFO) << "submit segcompaction remaining task, tablet_id:" <<
_context.tablet_id
<< " rowset_id:" << _context.rowset_id << " segment num:" <<
_num_segment
<< " segcompacted_point:" << _segcompacted_point;
- status = StorageEngine::instance()->submit_seg_compaction_task(this,
segments);
+ status =
StorageEngine::instance()->submit_seg_compaction_task(&_segcompaction_worker,
+
segments);
if (status.ok()) {
return status;
}
diff --git a/be/src/olap/rowset/beta_rowset_writer.h
b/be/src/olap/rowset/beta_rowset_writer.h
index d4d9f2f27e..7ad3aed786 100644
--- a/be/src/olap/rowset/beta_rowset_writer.h
+++ b/be/src/olap/rowset/beta_rowset_writer.h
@@ -120,8 +120,6 @@ public:
int32_t allocate_segment_id() override { return
_next_segment_id.fetch_add(1); };
- SegcompactionWorker& get_segcompaction_worker() { return
_segcompaction_worker; }
-
Status flush_segment_writer_for_segcompaction(
std::unique_ptr<segment_v2::SegmentWriter>* writer, uint64_t
index_size,
KeyBoundsPB& key_bounds);
diff --git a/be/src/olap/storage_engine.h b/be/src/olap/storage_engine.h
index 585f26902a..e1dfee1d79 100644
--- a/be/src/olap/storage_engine.h
+++ b/be/src/olap/storage_engine.h
@@ -55,7 +55,7 @@ class DataDir;
class EngineTask;
class MemTableFlushExecutor;
class TaskWorkerPool;
-class BetaRowsetWriter;
+class SegcompactionWorker;
class BaseCompaction;
class CumulativeCompaction;
class SingleReplicaCompaction;
@@ -208,7 +208,7 @@ public:
Status submit_compaction_task(TabletSharedPtr tablet, CompactionType
compaction_type,
bool force);
- Status submit_seg_compaction_task(BetaRowsetWriter* writer,
+ Status submit_seg_compaction_task(SegcompactionWorker* worker,
SegCompactionCandidatesSharedPtr
segments);
std::unique_ptr<ThreadPool>& tablet_publish_txn_thread_pool() {
@@ -324,7 +324,7 @@ private:
void _cache_file_cleaner_tasks_producer_callback();
- Status _handle_seg_compaction(BetaRowsetWriter* writer,
+ Status _handle_seg_compaction(SegcompactionWorker* worker,
SegCompactionCandidatesSharedPtr segments);
Status _handle_index_change(IndexBuilderSharedPtr index_builder);
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]