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 b1c5747f562 [improve](load) remove extra layer of heavy work pool in
tablet_writer_add_block (#28550)
b1c5747f562 is described below
commit b1c5747f5626977197c3719ef41a5068b47346e2
Author: Kaijie Chen <[email protected]>
AuthorDate: Fri Dec 22 20:10:50 2023 +0800
[improve](load) remove extra layer of heavy work pool in
tablet_writer_add_block (#28550)
---
be/src/service/internal_service.cpp | 47 +++++++++++--------------------------
be/src/service/internal_service.h | 5 ----
2 files changed, 14 insertions(+), 38 deletions(-)
diff --git a/be/src/service/internal_service.cpp
b/be/src/service/internal_service.cpp
index 24152c67089..8d352ba1d53 100644
--- a/be/src/service/internal_service.cpp
+++ b/be/src/service/internal_service.cpp
@@ -407,45 +407,26 @@ void
PInternalServiceImpl::open_load_stream(google::protobuf::RpcController* con
}
}
-void
PInternalServiceImpl::tablet_writer_add_block(google::protobuf::RpcController*
controller,
- const
PTabletWriterAddBlockRequest* request,
-
PTabletWriterAddBlockResult* response,
- google::protobuf::Closure*
done) {
- bool ret = _heavy_work_pool.try_offer([this, controller, request,
response, done]() {
- _tablet_writer_add_block(controller, request, response, done);
- });
- if (!ret) {
- offer_failed(response, done, _heavy_work_pool);
- return;
- }
-}
-
void PInternalServiceImpl::tablet_writer_add_block_by_http(
google::protobuf::RpcController* controller, const
::doris::PEmptyRequest* request,
PTabletWriterAddBlockResult* response, google::protobuf::Closure*
done) {
- bool ret = _heavy_work_pool.try_offer([this, controller, response, done]()
{
- PTabletWriterAddBlockRequest* new_request = new
PTabletWriterAddBlockRequest();
- google::protobuf::Closure* new_done =
- new NewHttpClosure<PTabletWriterAddBlockRequest>(new_request,
done);
- brpc::Controller* cntl = static_cast<brpc::Controller*>(controller);
- Status st =
attachment_extract_request_contain_block<PTabletWriterAddBlockRequest>(
- new_request, cntl);
- if (st.ok()) {
- _tablet_writer_add_block(controller, new_request, response,
new_done);
- } else {
- st.to_protobuf(response->mutable_status());
- }
- });
- if (!ret) {
- offer_failed(response, done, _heavy_work_pool);
- return;
+ PTabletWriterAddBlockRequest* new_request = new
PTabletWriterAddBlockRequest();
+ google::protobuf::Closure* new_done =
+ new NewHttpClosure<PTabletWriterAddBlockRequest>(new_request,
done);
+ brpc::Controller* cntl = static_cast<brpc::Controller*>(controller);
+ Status st =
attachment_extract_request_contain_block<PTabletWriterAddBlockRequest>(new_request,
+
cntl);
+ if (st.ok()) {
+ tablet_writer_add_block(controller, new_request, response, new_done);
+ } else {
+ st.to_protobuf(response->mutable_status());
}
}
-void
PInternalServiceImpl::_tablet_writer_add_block(google::protobuf::RpcController*
controller,
- const
PTabletWriterAddBlockRequest* request,
-
PTabletWriterAddBlockResult* response,
- google::protobuf::Closure*
done) {
+void
PInternalServiceImpl::tablet_writer_add_block(google::protobuf::RpcController*
controller,
+ const
PTabletWriterAddBlockRequest* request,
+
PTabletWriterAddBlockResult* response,
+ google::protobuf::Closure*
done) {
int64_t submit_task_time_ns = MonotonicNanos();
bool ret = _heavy_work_pool.try_offer([request, response, done,
submit_task_time_ns, this]() {
int64_t wait_execution_time_ns = MonotonicNanos() -
submit_task_time_ns;
diff --git a/be/src/service/internal_service.h
b/be/src/service/internal_service.h
index 15d121f2f1b..261a3d161dc 100644
--- a/be/src/service/internal_service.h
+++ b/be/src/service/internal_service.h
@@ -240,11 +240,6 @@ private:
::doris::PTransmitDataResult* response,
::google::protobuf::Closure* done,
const Status& extract_st);
- void _tablet_writer_add_block(google::protobuf::RpcController* controller,
- const PTabletWriterAddBlockRequest* request,
- PTabletWriterAddBlockResult* response,
- google::protobuf::Closure* done);
-
void _response_pull_slave_rowset(const std::string& remote_host, int64_t
brpc_port,
int64_t txn_id, int64_t tablet_id,
int64_t node_id,
bool is_succeed);
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]