You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@doris.apache.org by "platoneko (via GitHub)" <gi...@apache.org> on 2023/11/07 11:51:33 UTC

[PR] [feature](merge-cloud) Refactor write path code by abstract base class [doris]

platoneko opened a new pull request, #26537:
URL: https://github.com/apache/doris/pull/26537

   ## Proposed changes
   
   Refactor write path code by abstract base class. Whether to use `StorageEngine` or `CloudStorageEngine` will be determined during compilation instead of runtime `config::cloud_mode` to avoid unexpected null pointer issues caused by merging code.
   Class that depend on `StorageEngine` but are shared by the cloud mode need to have an abstract base class. Common code should be extracted into the base class, while the code that depends on `StorageEngine` should be implemented in a `StorageEngine` mix-in class of the base class.
   
   ## Further comments
   
   If this is a relatively large or complex change, kick off the discussion at [dev@doris.apache.org](mailto:dev@doris.apache.org) by explaining why you chose the solution you did and what alternatives you considered, etc...
   
   


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: commits-unsubscribe@doris.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org


---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@doris.apache.org
For additional commands, e-mail: commits-help@doris.apache.org


Re: [PR] [feature](merge-cloud) Refactor write path code by abstract base class [doris]

Posted by "platoneko (via GitHub)" <gi...@apache.org>.
platoneko commented on PR #26537:
URL: https://github.com/apache/doris/pull/26537#issuecomment-1835696493

   run buildall


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: commits-unsubscribe@doris.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org


---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@doris.apache.org
For additional commands, e-mail: commits-help@doris.apache.org


Re: [PR] [feature](merge-cloud) Refactor write path code by abstract base class [doris]

Posted by "github-actions[bot] (via GitHub)" <gi...@apache.org>.
github-actions[bot] commented on PR #26537:
URL: https://github.com/apache/doris/pull/26537#issuecomment-1844651332

   PR approved by anyone and no changes requested.


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: commits-unsubscribe@doris.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org


---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@doris.apache.org
For additional commands, e-mail: commits-help@doris.apache.org


Re: [PR] [feature](merge-cloud) Refactor write path code by abstract base class [doris]

Posted by "platoneko (via GitHub)" <gi...@apache.org>.
platoneko commented on PR #26537:
URL: https://github.com/apache/doris/pull/26537#issuecomment-1844246339

   run buildall


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: commits-unsubscribe@doris.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org


---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@doris.apache.org
For additional commands, e-mail: commits-help@doris.apache.org


Re: [PR] [feature](merge-cloud) Refactor write path code by abstract base class [doris]

Posted by "doris-robot (via GitHub)" <gi...@apache.org>.
doris-robot commented on PR #26537:
URL: https://github.com/apache/doris/pull/26537#issuecomment-1801552940

   
   <details>
   <summary>TPC-H test result on machine: 'aliyun_ecs.c7a.8xlarge_32C64G'</summary>
   
   ```
   Tpch sf100 test result on commit b2c3c880fab8ba85e58ba17bd3a1c29789316d86, data reload: false
   
   run tpch-sf100 query with default conf and session variables
   q1	5245	5095	4989	4989
   q2	386	206	201	201
   q3	2097	2036	2048	2036
   q4	1500	1471	1444	1444
   q5	4175	4228	4140	4140
   q6	250	134	137	134
   q7	2075	1601	1619	1601
   q8	2793	2794	2779	2779
   q9	10634	10342	10359	10342
   q10	3507	3608	3593	3593
   q11	381	259	258	258
   q12	456	299	308	299
   q13	4522	4091	4153	4091
   q14	319	290	292	290
   q15	593	537	567	537
   q16	703	625	594	594
   q17	1160	1103	1093	1093
   q18	7873	7544	7493	7493
   q19	1715	1757	1725	1725
   q20	616	373	374	373
   q21	5005	4644	4656	4644
   q22	528	450	446	446
   Total cold run time: 56533 ms
   Total hot run time: 53102 ms
   
   run tpch-sf100 query with default conf and set session variable runtime_filter_mode=off
   q1	4952	5008	4924	4924
   q2	366	273	258	258
   q3	4093	3929	4006	3929
   q4	2820	2809	2779	2779
   q5	6498	6505	6391	6391
   q6	247	127	129	127
   q7	3136	2731	2730	2730
   q8	4770	4803	4755	4755
   q9	17664	17738	17702	17702
   q10	4122	4244	4170	4170
   q11	809	653	640	640
   q12	1009	828	842	828
   q13	4279	3908	3875	3875
   q14	378	358	357	357
   q15	630	592	539	539
   q16	810	713	714	713
   q17	3933	3962	3924	3924
   q18	9415	9219	9285	9219
   q19	1889	1798	1814	1798
   q20	2395	2094	2041	2041
   q21	9023	8747	8799	8747
   q22	979	874	827	827
   Total cold run time: 84217 ms
   Total hot run time: 81273 ms
   ```
   </details>
   


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: commits-unsubscribe@doris.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org


---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@doris.apache.org
For additional commands, e-mail: commits-help@doris.apache.org


Re: [PR] [feature](merge-cloud) Refactor write path code by abstract base class [doris]

Posted by "doris-robot (via GitHub)" <gi...@apache.org>.
doris-robot commented on PR #26537:
URL: https://github.com/apache/doris/pull/26537#issuecomment-1846537084

   
   <details>
   <summary>TPC-H test result on machine: 'aliyun_ecs.c7a.8xlarge_32C64G'</summary>
   
   ```
   Tpch sf100 test result on commit 3d84552f479ac234b2f0347762888a8e57682333, data reload: false
   
   run tpch-sf100 query with default conf and session variables
   q1	4733	4468	4465	4465
   q2	374	138	159	138
   q3	1454	1252	1219	1219
   q4	1113	906	870	870
   q5	3115	3118	3143	3118
   q6	254	129	126	126
   q7	990	497	472	472
   q8	2225	2219	2193	2193
   q9	6724	6778	6643	6643
   q10	3201	3268	3268	3268
   q11	326	205	205	205
   q12	344	209	204	204
   q13	4549	3779	3825	3779
   q14	238	208	219	208
   q15	576	532	529	529
   q16	442	380	389	380
   q17	1010	598	596	596
   q18	7637	7403	7153	7153
   q19	1525	1430	1361	1361
   q20	558	305	292	292
   q21	3113	2643	2683	2643
   q22	345	273	282	273
   Total cold run time: 44846 ms
   Total hot run time: 40135 ms
   
   run tpch-sf100 query with default conf and set session variable runtime_filter_mode=off
   q1	4431	4457	4385	4385
   q2	268	164	170	164
   q3	3547	3522	3528	3522
   q4	2380	2370	2370	2370
   q5	5721	5746	5748	5746
   q6	241	120	119	119
   q7	2381	1853	1824	1824
   q8	3513	3539	3535	3535
   q9	9072	9057	8970	8970
   q10	3885	3977	3994	3977
   q11	511	387	386	386
   q12	753	596	598	596
   q13	4329	3534	3583	3534
   q14	282	261	259	259
   q15	566	525	522	522
   q16	500	460	471	460
   q17	1865	1867	1871	1867
   q18	8658	8289	10160	8289
   q19	1719	1742	1721	1721
   q20	2245	1957	1937	1937
   q21	6478	6178	6130	6130
   q22	507	431	415	415
   Total cold run time: 63852 ms
   Total hot run time: 60728 ms
   ```
   </details>
   


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: commits-unsubscribe@doris.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org


---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@doris.apache.org
For additional commands, e-mail: commits-help@doris.apache.org


Re: [PR] [feature](merge-cloud) Refactor write path code by abstract base class [doris]

Posted by "github-actions[bot] (via GitHub)" <gi...@apache.org>.
github-actions[bot] commented on code in PR #26537:
URL: https://github.com/apache/doris/pull/26537#discussion_r1418836855


##########
be/src/olap/rowset/beta_rowset_writer.cpp:
##########
@@ -460,11 +491,11 @@ Status BetaRowsetWriter::flush_memtable(vectorized::Block* block, int32_t segmen
     return Status::OK();
 }
 
-Status BetaRowsetWriter::flush_single_block(const vectorized::Block* block) {
+Status BaseBetaRowsetWriter::flush_single_block(const vectorized::Block* block) {
     return _segment_creator.flush_single_block(block);
 }
 
-Status BetaRowsetWriter::wait_flying_segcompaction() {
+Status BetaRowsetWriter::_wait_flying_segcompaction() {

Review Comment:
   warning: method '_wait_flying_segcompaction' can be made static [readability-convert-member-functions-to-static]
   
   be/src/olap/rowset/beta_rowset_writer.h:207:
   ```diff
   -     Status _wait_flying_segcompaction();
   +     static Status _wait_flying_segcompaction();
   ```
   



-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: commits-unsubscribe@doris.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org


---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@doris.apache.org
For additional commands, e-mail: commits-help@doris.apache.org


Re: [PR] [feature](merge-cloud) Refactor write path code by abstract base class [doris]

Posted by "platoneko (via GitHub)" <gi...@apache.org>.
platoneko commented on PR #26537:
URL: https://github.com/apache/doris/pull/26537#issuecomment-1842670893

   run buildall


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: commits-unsubscribe@doris.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org


---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@doris.apache.org
For additional commands, e-mail: commits-help@doris.apache.org


Re: [PR] [feature](merge-cloud) Refactor write path code by abstract base class [doris]

Posted by "doris-robot (via GitHub)" <gi...@apache.org>.
doris-robot commented on PR #26537:
URL: https://github.com/apache/doris/pull/26537#issuecomment-1846535852

   (From new machine)TeamCity pipeline, clickbench performance test result:
    the sum of best hot time: 45.15 seconds
    stream load tsv:          588 seconds loaded 74807831229 Bytes, about 121 MB/s
    stream load json:         19 seconds loaded 2358488459 Bytes, about 118 MB/s
    stream load orc:          66 seconds loaded 1101869774 Bytes, about 15 MB/s
    stream load parquet:          32 seconds loaded 861443392 Bytes, about 25 MB/s
    insert into select:          29.0 seconds inserted 10000000 Rows, about 344K ops/s
    storage size: 17213811814 Bytes


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: commits-unsubscribe@doris.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org


---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@doris.apache.org
For additional commands, e-mail: commits-help@doris.apache.org


Re: [PR] [feature](merge-cloud) Refactor write path code by abstract base class [doris]

Posted by "github-actions[bot] (via GitHub)" <gi...@apache.org>.
github-actions[bot] commented on code in PR #26537:
URL: https://github.com/apache/doris/pull/26537#discussion_r1411792796


##########
be/src/olap/rowset/beta_rowset_writer.cpp:
##########
@@ -541,25 +583,19 @@
     return Status::OK();
 }
 
-bool BetaRowsetWriter::_is_segment_overlapping(
-        const std::vector<KeyBoundsPB>& segments_encoded_key_bounds) {
-    std::string last;
-    for (auto segment_encode_key : segments_encoded_key_bounds) {
-        auto cur_min = segment_encode_key.min_key();
-        auto cur_max = segment_encode_key.max_key();
-        if (cur_min <= last) {
-            return true;
-        }
-        last = cur_max;
-    }
-    return false;
+int64_t BaseBetaRowsetWriter::_num_seg() const {
+    return _num_segment;
+}
+
+int64_t BetaRowsetWriter::_num_seg() const {
+    return _is_segcompacted() ? _num_segcompacted : _num_segment;
 }
 
 // update tablet schema when meet variant columns, before commit_txn
 // Eg. rowset schema:       A(int),    B(float),  C(int), D(int)
 // _tabelt->tablet_schema:  A(bigint), B(double)
 //  => update_schema:       A(bigint), B(double), C(int), D(int)
-void BetaRowsetWriter::update_rowset_schema(TabletSchemaSPtr flush_schema) {
+void BaseBetaRowsetWriter::update_rowset_schema(TabletSchemaSPtr flush_schema) {

Review Comment:
   warning: method 'update_rowset_schema' can be made static [readability-convert-member-functions-to-static]
   
   be/src/olap/rowset/beta_rowset_writer.h:133:
   ```diff
   -     void update_rowset_schema(TabletSchemaSPtr flush_schema);
   +     static void update_rowset_schema(TabletSchemaSPtr flush_schema);
   ```
   



##########
be/src/runtime/tablets_channel.cpp:
##########
@@ -185,14 +203,12 @@ Status TabletsChannel::incremental_open(const PTabletWriterOpenRequest& params)
     return Status::OK();
 }
 
-Status TabletsChannel::close(
-        LoadChannel* parent, int sender_id, int64_t backend_id, bool* finished,
-        const google::protobuf::RepeatedField<int64_t>& partition_ids,
-        google::protobuf::RepeatedPtrField<PTabletInfo>* tablet_vec,
-        google::protobuf::RepeatedPtrField<PTabletError>* tablet_errors,
-        const google::protobuf::Map<int64_t, PSlaveTabletNodes>& slave_tablet_nodes,
-        google::protobuf::Map<int64_t, PSuccessSlaveTabletNodeIds>* success_slave_tablet_node_ids,
-        const bool write_single_replica) {
+Status TabletsChannel::close(LoadChannel* parent, const PTabletWriterAddBlockRequest& req,

Review Comment:
   warning: function 'close' exceeds recommended size/complexity thresholds [readability-function-size]
   ```cpp
   Status TabletsChannel::close(LoadChannel* parent, const PTabletWriterAddBlockRequest& req,
                          ^
   ```
   <details>
   <summary>Additional context</summary>
   
   **be/src/runtime/tablets_channel.cpp:205:** 137 lines including whitespace and comments (threshold 80)
   ```cpp
   Status TabletsChannel::close(LoadChannel* parent, const PTabletWriterAddBlockRequest& req,
                          ^
   ```
   
   </details>
   



##########
be/src/olap/rowset/beta_rowset_writer.cpp:
##########
@@ -460,11 +491,11 @@ Status BetaRowsetWriter::flush_memtable(vectorized::Block* block, int32_t segmen
     return Status::OK();
 }
 
-Status BetaRowsetWriter::flush_single_block(const vectorized::Block* block) {
+Status BaseBetaRowsetWriter::flush_single_block(const vectorized::Block* block) {
     return _segment_creator.flush_single_block(block);
 }
 
-Status BetaRowsetWriter::wait_flying_segcompaction() {
+Status BetaRowsetWriter::_wait_flying_segcompaction() {

Review Comment:
   warning: method '_wait_flying_segcompaction' can be made static [readability-convert-member-functions-to-static]
   
   be/src/olap/rowset/beta_rowset_writer.h:205:
   ```diff
   -     Status _wait_flying_segcompaction();
   +     static Status _wait_flying_segcompaction();
   ```
   



##########
be/src/olap/rowset_builder.cpp:
##########
@@ -343,9 +322,9 @@
     return Status::OK();
 }
 
-void RowsetBuilder::_build_current_tablet_schema(int64_t index_id,
-                                                 const OlapTableSchemaParam* table_schema_param,
-                                                 const TabletSchema& ori_tablet_schema) {
+void BaseRowsetBuilder::_build_current_tablet_schema(int64_t index_id,

Review Comment:
   warning: method '_build_current_tablet_schema' can be made static [readability-convert-member-functions-to-static]
   
   be/src/olap/rowset_builder.h:87:
   ```diff
   -     void _build_current_tablet_schema(int64_t index_id,
   +     static void _build_current_tablet_schema(int64_t index_id,
   ```
   



##########
be/src/olap/rowset/segment_v2/segment_writer.cpp:
##########
@@ -336,11 +338,12 @@ void SegmentWriter::_serialize_block_to_row_column(vectorized::Block& block) {
 // 3. set columns to data convertor and then write all columns
 Status SegmentWriter::append_block_with_partial_content(const vectorized::Block* block,

Review Comment:
   warning: function 'append_block_with_partial_content' has cognitive complexity of 51 (threshold 50) [readability-function-cognitive-complexity]
   ```cpp
   Status SegmentWriter::append_block_with_partial_content(const vectorized::Block* block,
                         ^
   ```
   <details>
   <summary>Additional context</summary>
   
   **be/src/olap/rowset/segment_v2/segment_writer.cpp:340:** +1, including nesting penalty of 0, nesting level increased to 1
   ```cpp
       if constexpr (!std::is_same_v<ExecEnv::Engine, StorageEngine>) {
       ^
   ```
   **be/src/olap/rowset/segment_v2/segment_writer.cpp:346:** +1, including nesting penalty of 0, nesting level increased to 1
   ```cpp
       if (block->columns() <= _tablet_schema->num_key_columns() ||
       ^
   ```
   **be/src/olap/rowset/segment_v2/segment_writer.cpp:399:** +1, including nesting penalty of 0, nesting level increased to 1
   ```cpp
       if (const vectorized::ColumnWithTypeAndName* delete_sign_column =
       ^
   ```
   **be/src/olap/rowset/segment_v2/segment_writer.cpp:404:** +2, including nesting penalty of 1, nesting level increased to 2
   ```cpp
           if (delete_sign_col.size() >= row_pos + num_rows) {
           ^
   ```
   **be/src/olap/rowset/segment_v2/segment_writer.cpp:418:** +1, including nesting penalty of 0, nesting level increased to 1
   ```cpp
       for (size_t block_pos = row_pos; block_pos < row_pos + num_rows; block_pos++) {
       ^
   ```
   **be/src/olap/rowset/segment_v2/segment_writer.cpp:429:** +2, including nesting penalty of 1, nesting level increased to 2
   ```cpp
           if (have_input_seq_column) {
           ^
   ```
   **be/src/olap/rowset/segment_v2/segment_writer.cpp:435:** +2, including nesting penalty of 1, nesting level increased to 2
   ```cpp
           if (!_tablet_schema->has_sequence_col() || have_input_seq_column) {
           ^
   ```
   **be/src/olap/rowset/segment_v2/segment_writer.cpp:436:** +3, including nesting penalty of 2, nesting level increased to 3
   ```cpp
               RETURN_IF_ERROR(_primary_key_index_builder->add_item(key));
               ^
   ```
   **be/src/common/status.h:523:** expanded from macro 'RETURN_IF_ERROR'
   ```cpp
       do {                                \
       ^
   ```
   **be/src/olap/rowset/segment_v2/segment_writer.cpp:436:** +4, including nesting penalty of 3, nesting level increased to 4
   ```cpp
               RETURN_IF_ERROR(_primary_key_index_builder->add_item(key));
               ^
   ```
   **be/src/common/status.h:525:** expanded from macro 'RETURN_IF_ERROR'
   ```cpp
           if (UNLIKELY(!_status_.ok())) { \
           ^
   ```
   **be/src/olap/rowset/segment_v2/segment_writer.cpp:441:** +1
   ```cpp
                   (delete_sign_column_data != nullptr && delete_sign_column_data[block_pos] != 0);
                                                       ^
   ```
   **be/src/olap/rowset/segment_v2/segment_writer.cpp:448:** +2, including nesting penalty of 1, nesting level increased to 2
   ```cpp
           if (st.is<KEY_NOT_FOUND>()) {
           ^
   ```
   **be/src/olap/rowset/segment_v2/segment_writer.cpp:449:** +3, including nesting penalty of 2, nesting level increased to 3
   ```cpp
               if (_opts.rowset_ctx->partial_update_info->is_strict_mode) {
               ^
   ```
   **be/src/olap/rowset/segment_v2/segment_writer.cpp:457:** +3, including nesting penalty of 2, nesting level increased to 3
   ```cpp
               if (!_opts.rowset_ctx->partial_update_info->can_insert_new_rows_in_partial_update) {
               ^
   ```
   **be/src/olap/rowset/segment_v2/segment_writer.cpp:466:** +2, including nesting penalty of 1, nesting level increased to 2
   ```cpp
           if (!st.ok() && !st.is<KEY_ALREADY_EXISTS>()) {
           ^
   ```
   **be/src/olap/rowset/segment_v2/segment_writer.cpp:474:** +2, including nesting penalty of 1, nesting level increased to 2
   ```cpp
           if (have_delete_sign) {
           ^
   ```
   **be/src/olap/rowset/segment_v2/segment_writer.cpp:477:** +1, nesting level increased to 2
   ```cpp
           } else {
             ^
   ```
   **be/src/olap/rowset/segment_v2/segment_writer.cpp:484:** +2, including nesting penalty of 1, nesting level increased to 2
   ```cpp
           if (st.is<KEY_ALREADY_EXISTS>()) {
           ^
   ```
   **be/src/olap/rowset/segment_v2/segment_writer.cpp:490:** +1, nesting level increased to 2
   ```cpp
           } else {
             ^
   ```
   **be/src/olap/rowset/segment_v2/segment_writer.cpp:497:** +1, including nesting penalty of 0, nesting level increased to 1
   ```cpp
       if (config::enable_merge_on_write_correctness_check) {
       ^
   ```
   **be/src/olap/rowset/segment_v2/segment_writer.cpp:504:** +1, including nesting penalty of 0, nesting level increased to 1
   ```cpp
       RETURN_IF_ERROR(fill_missing_columns(mutable_full_columns, use_default_or_null_flag,
       ^
   ```
   **be/src/common/status.h:523:** expanded from macro 'RETURN_IF_ERROR'
   ```cpp
       do {                                \
       ^
   ```
   **be/src/olap/rowset/segment_v2/segment_writer.cpp:504:** +2, including nesting penalty of 1, nesting level increased to 2
   ```cpp
       RETURN_IF_ERROR(fill_missing_columns(mutable_full_columns, use_default_or_null_flag,
       ^
   ```
   **be/src/common/status.h:525:** expanded from macro 'RETURN_IF_ERROR'
   ```cpp
           if (UNLIKELY(!_status_.ok())) { \
           ^
   ```
   **be/src/olap/rowset/segment_v2/segment_writer.cpp:507:** +1, including nesting penalty of 0, nesting level increased to 1
   ```cpp
       if (_tablet_schema->store_row_column()) {
       ^
   ```
   **be/src/olap/rowset/segment_v2/segment_writer.cpp:531:** +1, including nesting penalty of 0, nesting level increased to 1
   ```cpp
       if (_tablet_schema->has_sequence_col() && !have_input_seq_column) {
       ^
   ```
   **be/src/olap/rowset/segment_v2/segment_writer.cpp:538:** +2, including nesting penalty of 1, nesting level increased to 2
   ```cpp
           if (_num_rows_written != row_pos ||
           ^
   ```
   **be/src/olap/rowset/segment_v2/segment_writer.cpp:545:** +2, including nesting penalty of 1, nesting level increased to 2
   ```cpp
           for (size_t block_pos = row_pos; block_pos < row_pos + num_rows; block_pos++) {
           ^
   ```
   **be/src/olap/rowset/segment_v2/segment_writer.cpp:548:** +3, including nesting penalty of 2, nesting level increased to 3
   ```cpp
               RETURN_IF_ERROR(_primary_key_index_builder->add_item(key));
               ^
   ```
   **be/src/common/status.h:523:** expanded from macro 'RETURN_IF_ERROR'
   ```cpp
       do {                                \
       ^
   ```
   **be/src/olap/rowset/segment_v2/segment_writer.cpp:548:** +4, including nesting penalty of 3, nesting level increased to 4
   ```cpp
               RETURN_IF_ERROR(_primary_key_index_builder->add_item(key));
               ^
   ```
   **be/src/common/status.h:525:** expanded from macro 'RETURN_IF_ERROR'
   ```cpp
           if (UNLIKELY(!_status_.ok())) { \
           ^
   ```
   
   </details>
   



##########
be/src/runtime/tablets_channel.cpp:
##########
@@ -479,8 +494,8 @@
     return os;
 }
 
-Status TabletsChannel::add_batch(const PTabletWriterAddBlockRequest& request,
-                                 PTabletWriterAddBlockResult* response) {
+Status BaseTabletsChannel::add_batch(const PTabletWriterAddBlockRequest& request,

Review Comment:
   warning: function 'add_batch' exceeds recommended size/complexity thresholds [readability-function-size]
   ```cpp
   Status BaseTabletsChannel::add_batch(const PTabletWriterAddBlockRequest& request,
                              ^
   ```
   <details>
   <summary>Additional context</summary>
   
   **be/src/runtime/tablets_channel.cpp:496:** 86 lines including whitespace and comments (threshold 80)
   ```cpp
   Status BaseTabletsChannel::add_batch(const PTabletWriterAddBlockRequest& request,
                              ^
   ```
   
   </details>
   



##########
be/src/olap/rowset_builder.cpp:
##########
@@ -261,14 +246,14 @@ Status RowsetBuilder::submit_calc_delete_bitmap_task() {
         return Status::OK();
     }
 
-    LOG(INFO) << "submit calc delete bitmap task to executor, tablet_id: " << tablet->tablet_id()
+    LOG(INFO) << "submit calc delete bitmap task to executor, tablet_id: " << tablet()->tablet_id()
               << ", txn_id: " << _req.txn_id;
-    return tablet->commit_phase_update_delete_bitmap(_rowset, _rowset_ids, _delete_bitmap, segments,
-                                                     _req.txn_id, _calc_delete_bitmap_token.get(),
-                                                     nullptr);
+    return tablet()->commit_phase_update_delete_bitmap(_rowset, _rowset_ids, _delete_bitmap,
+                                                       segments, _req.txn_id,
+                                                       _calc_delete_bitmap_token.get(), nullptr);
 }
 
-Status RowsetBuilder::wait_calc_delete_bitmap() {
+Status BaseRowsetBuilder::wait_calc_delete_bitmap() {

Review Comment:
   warning: method 'wait_calc_delete_bitmap' can be made static [readability-convert-member-functions-to-static]
   
   be/src/olap/rowset_builder.h:65:
   ```diff
   -     Status wait_calc_delete_bitmap();
   +     static Status wait_calc_delete_bitmap();
   ```
   



-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: commits-unsubscribe@doris.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org


---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@doris.apache.org
For additional commands, e-mail: commits-help@doris.apache.org


Re: [PR] [feature](merge-cloud) Refactor write path code by abstract base class [doris]

Posted by "github-actions[bot] (via GitHub)" <gi...@apache.org>.
github-actions[bot] commented on code in PR #26537:
URL: https://github.com/apache/doris/pull/26537#discussion_r1386218284


##########
be/src/olap/rowset/beta_rowset_writer.cpp:
##########
@@ -456,11 +486,11 @@ Status BetaRowsetWriter::flush_memtable(vectorized::Block* block, int32_t segmen
     return Status::OK();
 }
 
-Status BetaRowsetWriter::flush_single_block(const vectorized::Block* block) {
+Status BaseBetaRowsetWriter::flush_single_block(const vectorized::Block* block) {
     return _segment_creator.flush_single_block(block);
 }
 
-Status BetaRowsetWriter::wait_flying_segcompaction() {
+Status BetaRowsetWriter::_wait_flying_segcompaction() {

Review Comment:
   warning: method '_wait_flying_segcompaction' can be made static [readability-convert-member-functions-to-static]
   
   be/src/olap/rowset/beta_rowset_writer.h:212:
   ```diff
   -     Status _wait_flying_segcompaction();
   +     static Status _wait_flying_segcompaction();
   ```
   



##########
be/src/olap/rowset/beta_rowset_writer.cpp:
##########
@@ -537,25 +578,19 @@
     return Status::OK();
 }
 
-bool BetaRowsetWriter::_is_segment_overlapping(
-        const std::vector<KeyBoundsPB>& segments_encoded_key_bounds) {
-    std::string last;
-    for (auto segment_encode_key : segments_encoded_key_bounds) {
-        auto cur_min = segment_encode_key.min_key();
-        auto cur_max = segment_encode_key.max_key();
-        if (cur_min <= last) {
-            return true;
-        }
-        last = cur_max;
-    }
-    return false;
+int64_t BaseBetaRowsetWriter::_num_seg() const {
+    return _num_segment;
+}
+
+int64_t BetaRowsetWriter::_num_seg() const {
+    return _is_segcompacted() ? _num_segcompacted : _num_segment;
 }
 
 // update tablet schema when meet variant columns, before commit_txn
 // Eg. rowset schema:       A(int),    B(float),  C(int), D(int)
 // _tabelt->tablet_schema:  A(bigint), B(double)
 //  => update_schema:       A(bigint), B(double), C(int), D(int)
-void BetaRowsetWriter::update_rowset_schema(TabletSchemaSPtr flush_schema) {
+void BaseBetaRowsetWriter::update_rowset_schema(TabletSchemaSPtr flush_schema) {

Review Comment:
   warning: method 'update_rowset_schema' can be made static [readability-convert-member-functions-to-static]
   
   be/src/olap/rowset/beta_rowset_writer.h:139:
   ```diff
   -     void update_rowset_schema(TabletSchemaSPtr flush_schema);
   +     static void update_rowset_schema(TabletSchemaSPtr flush_schema);
   ```
   



-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: commits-unsubscribe@doris.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org


---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@doris.apache.org
For additional commands, e-mail: commits-help@doris.apache.org


Re: [PR] [feature](merge-cloud) Refactor write path code by abstract base class [doris]

Posted by "github-actions[bot] (via GitHub)" <gi...@apache.org>.
github-actions[bot] commented on PR #26537:
URL: https://github.com/apache/doris/pull/26537#issuecomment-1844650847

   PR approved by at least one committer and no changes requested.


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: commits-unsubscribe@doris.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org


---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@doris.apache.org
For additional commands, e-mail: commits-help@doris.apache.org


Re: [PR] [feature](merge-cloud) Refactor write path code by abstract base class [doris]

Posted by "platoneko (via GitHub)" <gi...@apache.org>.
platoneko commented on PR #26537:
URL: https://github.com/apache/doris/pull/26537#issuecomment-1801333481

   run buildall


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: commits-unsubscribe@doris.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org


---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@doris.apache.org
For additional commands, e-mail: commits-help@doris.apache.org


Re: [PR] [feature](merge-cloud) Refactor write path code by abstract base class [doris]

Posted by "doris-robot (via GitHub)" <gi...@apache.org>.
doris-robot commented on PR #26537:
URL: https://github.com/apache/doris/pull/26537#issuecomment-1842780768

   (From new machine)TeamCity pipeline, clickbench performance test result:
    the sum of best hot time: 44.19 seconds
    stream load tsv:          573 seconds loaded 74807831229 Bytes, about 124 MB/s
    stream load json:         19 seconds loaded 2358488459 Bytes, about 118 MB/s
    stream load orc:          66 seconds loaded 1101869774 Bytes, about 15 MB/s
    stream load parquet:          33 seconds loaded 861443392 Bytes, about 24 MB/s
    insert into select:          28.7 seconds inserted 10000000 Rows, about 348K ops/s
    storage size: 17162566865 Bytes


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: commits-unsubscribe@doris.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org


---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@doris.apache.org
For additional commands, e-mail: commits-help@doris.apache.org


Re: [PR] [feature](merge-cloud) Refactor write path code by abstract base class [doris]

Posted by "platoneko (via GitHub)" <gi...@apache.org>.
platoneko commented on PR #26537:
URL: https://github.com/apache/doris/pull/26537#issuecomment-1845056905

   run buildall


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: commits-unsubscribe@doris.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org


---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@doris.apache.org
For additional commands, e-mail: commits-help@doris.apache.org


Re: [PR] [feature](merge-cloud) Refactor write path code by abstract base class [doris]

Posted by "doris-robot (via GitHub)" <gi...@apache.org>.
doris-robot commented on PR #26537:
URL: https://github.com/apache/doris/pull/26537#issuecomment-1836103606

   (From new machine)TeamCity pipeline, clickbench performance test result:
    the sum of best hot time: 43.65 seconds
    stream load tsv:          572 seconds loaded 74807831229 Bytes, about 124 MB/s
    stream load json:         18 seconds loaded 2358488459 Bytes, about 124 MB/s
    stream load orc:          65 seconds loaded 1101869774 Bytes, about 16 MB/s
    stream load parquet:          32 seconds loaded 861443392 Bytes, about 25 MB/s
    insert into select:          28.4 seconds inserted 10000000 Rows, about 352K ops/s
    storage size: 17167173719 Bytes


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: commits-unsubscribe@doris.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org


---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@doris.apache.org
For additional commands, e-mail: commits-help@doris.apache.org


Re: [PR] [feature](merge-cloud) Refactor write path code by abstract base class [doris]

Posted by "doris-robot (via GitHub)" <gi...@apache.org>.
doris-robot commented on PR #26537:
URL: https://github.com/apache/doris/pull/26537#issuecomment-1842946694

   
   <details>
   <summary>TPC-H test result on machine: 'aliyun_ecs.c7a.8xlarge_32C64G'</summary>
   
   ```
   Tpch sf100 test result on commit 1c4c3820b7d06c6ccc19e9f1686fa74618f787ed, data reload: false
   
   run tpch-sf100 query with default conf and session variables
   q1	4726	4465	4468	4465
   q2	364	158	159	158
   q3	1464	1224	1214	1214
   q4	1118	964	910	910
   q5	3135	3178	3225	3178
   q6	248	128	131	128
   q7	1020	495	487	487
   q8	2174	2264	2198	2198
   q9	6682	6732	6711	6711
   q10	3242	3372	3273	3273
   q11	323	203	204	203
   q12	356	213	215	213
   q13	4569	4259	3790	3790
   q14	245	213	223	213
   q15	573	525	522	522
   q16	451	387	397	387
   q17	1016	636	552	552
   q18	7439	7373	7250	7250
   q19	1524	1394	1401	1394
   q20	531	295	338	295
   q21	3120	2719	2676	2676
   q22	355	294	291	291
   Total cold run time: 44675 ms
   Total hot run time: 40508 ms
   
   run tpch-sf100 query with default conf and set session variable runtime_filter_mode=off
   q1	4408	4394	4395	4394
   q2	269	169	171	169
   q3	3543	3531	3517	3517
   q4	2393	2385	2383	2383
   q5	5747	5736	5735	5735
   q6	241	120	123	120
   q7	2414	1863	1865	1863
   q8	3522	3537	3533	3533
   q9	9077	9015	9002	9002
   q10	3937	4008	4004	4004
   q11	515	385	387	385
   q12	789	594	606	594
   q13	4286	3522	3570	3522
   q14	285	257	259	257
   q15	564	516	520	516
   q16	512	463	452	452
   q17	1891	1889	1859	1859
   q18	8573	8299	8254	8254
   q19	1749	1764	1752	1752
   q20	2252	1930	1939	1930
   q21	6516	6186	6182	6182
   q22	506	431	455	431
   Total cold run time: 63989 ms
   Total hot run time: 60854 ms
   ```
   </details>
   


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: commits-unsubscribe@doris.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org


---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@doris.apache.org
For additional commands, e-mail: commits-help@doris.apache.org


Re: [PR] [feature](merge-cloud) Refactor write path code by abstract base class [doris]

Posted by "github-actions[bot] (via GitHub)" <gi...@apache.org>.
github-actions[bot] commented on code in PR #26537:
URL: https://github.com/apache/doris/pull/26537#discussion_r1418721350


##########
be/src/olap/rowset/beta_rowset_writer.cpp:
##########
@@ -460,11 +491,11 @@ Status BetaRowsetWriter::flush_memtable(vectorized::Block* block, int32_t segmen
     return Status::OK();
 }
 
-Status BetaRowsetWriter::flush_single_block(const vectorized::Block* block) {
+Status BaseBetaRowsetWriter::flush_single_block(const vectorized::Block* block) {
     return _segment_creator.flush_single_block(block);
 }
 
-Status BetaRowsetWriter::wait_flying_segcompaction() {
+Status BetaRowsetWriter::_wait_flying_segcompaction() {

Review Comment:
   warning: method '_wait_flying_segcompaction' can be made static [readability-convert-member-functions-to-static]
   
   be/src/olap/rowset/beta_rowset_writer.h:206:
   ```diff
   -     Status _wait_flying_segcompaction();
   +     static Status _wait_flying_segcompaction();
   ```
   



##########
be/src/olap/rowset/beta_rowset_writer.cpp:
##########
@@ -541,25 +583,19 @@
     return Status::OK();
 }
 
-bool BetaRowsetWriter::_is_segment_overlapping(
-        const std::vector<KeyBoundsPB>& segments_encoded_key_bounds) {
-    std::string last;
-    for (auto segment_encode_key : segments_encoded_key_bounds) {
-        auto cur_min = segment_encode_key.min_key();
-        auto cur_max = segment_encode_key.max_key();
-        if (cur_min <= last) {
-            return true;
-        }
-        last = cur_max;
-    }
-    return false;
+int64_t BaseBetaRowsetWriter::_num_seg() const {
+    return _num_segment;
+}
+
+int64_t BetaRowsetWriter::_num_seg() const {
+    return _is_segcompacted() ? _num_segcompacted : _num_segment;
 }
 
 // update tablet schema when meet variant columns, before commit_txn
 // Eg. rowset schema:       A(int),    B(float),  C(int), D(int)
 // _tabelt->tablet_schema:  A(bigint), B(double)
 //  => update_schema:       A(bigint), B(double), C(int), D(int)
-void BetaRowsetWriter::update_rowset_schema(TabletSchemaSPtr flush_schema) {
+void BaseBetaRowsetWriter::update_rowset_schema(TabletSchemaSPtr flush_schema) {

Review Comment:
   warning: method 'update_rowset_schema' can be made static [readability-convert-member-functions-to-static]
   
   be/src/olap/rowset/beta_rowset_writer.h:134:
   ```diff
   -     void update_rowset_schema(TabletSchemaSPtr flush_schema);
   +     static void update_rowset_schema(TabletSchemaSPtr flush_schema);
   ```
   



-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: commits-unsubscribe@doris.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org


---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@doris.apache.org
For additional commands, e-mail: commits-help@doris.apache.org


Re: [PR] [feature](merge-cloud) Refactor write path code by abstract base class [doris]

Posted by "github-actions[bot] (via GitHub)" <gi...@apache.org>.
github-actions[bot] commented on code in PR #26537:
URL: https://github.com/apache/doris/pull/26537#discussion_r1384810288


##########
be/src/olap/rowset/beta_rowset_writer.cpp:
##########
@@ -454,11 +484,11 @@ Status BetaRowsetWriter::flush_memtable(vectorized::Block* block, int32_t segmen
     return Status::OK();
 }
 
-Status BetaRowsetWriter::flush_single_block(const vectorized::Block* block) {
+Status BaseBetaRowsetWriter::flush_single_block(const vectorized::Block* block) {
     return _segment_creator.flush_single_block(block);
 }
 
-Status BetaRowsetWriter::wait_flying_segcompaction() {
+Status BetaRowsetWriter::_wait_flying_segcompaction() {

Review Comment:
   warning: method '_wait_flying_segcompaction' can be made static [readability-convert-member-functions-to-static]
   
   be/src/olap/rowset/beta_rowset_writer.h:200:
   ```diff
   -     Status _wait_flying_segcompaction();
   +     static Status _wait_flying_segcompaction();
   ```
   



##########
be/src/olap/delta_writer.h:
##########
@@ -20,7 +20,6 @@
 #include <gen_cpp/Types_types.h>

Review Comment:
   warning: 'gen_cpp/Types_types.h' file not found [clang-diagnostic-error]
   ```cpp
   #include <gen_cpp/Types_types.h>
            ^
   ```
   



##########
be/src/olap/delta_writer.cpp:
##########
@@ -140,37 +146,31 @@ Status DeltaWriter::close() {
     return _memtable_writer->close();
 }
 
-Status DeltaWriter::build_rowset() {
+Status BaseDeltaWriter::build_rowset() {
     std::lock_guard<std::mutex> l(_lock);
     DCHECK(_is_init)
             << "delta writer is supposed be to initialized before build_rowset() being called";
 
     SCOPED_TIMER(_close_wait_timer);
     RETURN_IF_ERROR(_memtable_writer->close_wait(_profile));
-    return _rowset_builder.build_rowset();
+    return _rowset_builder->build_rowset();
 }
 
-Status DeltaWriter::submit_calc_delete_bitmap_task() {
-    return _rowset_builder.submit_calc_delete_bitmap_task();
+Status BaseDeltaWriter::submit_calc_delete_bitmap_task() {
+    return _rowset_builder->submit_calc_delete_bitmap_task();
 }
 
-Status DeltaWriter::wait_calc_delete_bitmap() {
-    return _rowset_builder.wait_calc_delete_bitmap();
+Status BaseDeltaWriter::wait_calc_delete_bitmap() {
+    return _rowset_builder->wait_calc_delete_bitmap();
 }
 
-Status DeltaWriter::commit_txn(const PSlaveTabletNodes& slave_tablet_nodes,
-                               const bool write_single_replica) {
-    if (config::cloud_mode) {
-        return Status::OK();
-    }
+Status DeltaWriter::commit_txn(const PSlaveTabletNodes& slave_tablet_nodes) {

Review Comment:
   warning: method 'commit_txn' can be made static [readability-convert-member-functions-to-static]
   
   ```suggestion
   static Status DeltaWriter::commit_txn(const PSlaveTabletNodes& slave_tablet_nodes) {
   ```
   



##########
be/src/olap/rowset/beta_rowset_writer.h:
##########
@@ -19,8 +19,6 @@
 
 #include <fmt/format.h>

Review Comment:
   warning: 'fmt/format.h' file not found [clang-diagnostic-error]
   ```cpp
   #include <fmt/format.h>
            ^
   ```
   



##########
be/src/olap/rowset/beta_rowset_writer.cpp:
##########
@@ -644,7 +660,8 @@
     return Status::OK();
 }
 
-Status BetaRowsetWriter::create_file_writer(uint32_t segment_id, io::FileWriterPtr& file_writer) {
+Status BaseBetaRowsetWriter::create_file_writer(uint32_t segment_id,

Review Comment:
   warning: method 'create_file_writer' can be made static [readability-convert-member-functions-to-static]
   
   ```suggestion
   static Status BaseBetaRowsetWriter::create_file_writer(uint32_t segment_id,
   ```
   



##########
be/src/olap/rowset_builder.cpp:
##########
@@ -259,14 +243,14 @@ Status RowsetBuilder::submit_calc_delete_bitmap_task() {
         return Status::OK();
     }
 
-    LOG(INFO) << "submit calc delete bitmap task to executor, tablet_id: " << tablet->tablet_id()
+    LOG(INFO) << "submit calc delete bitmap task to executor, tablet_id: " << tablet()->tablet_id()
               << ", txn_id: " << _req.txn_id;
-    return tablet->commit_phase_update_delete_bitmap(_rowset, _rowset_ids, _delete_bitmap, segments,
-                                                     _req.txn_id, _calc_delete_bitmap_token.get(),
-                                                     nullptr);
+    return tablet()->commit_phase_update_delete_bitmap(_rowset, _rowset_ids, _delete_bitmap,
+                                                       segments, _req.txn_id,
+                                                       _calc_delete_bitmap_token.get(), nullptr);
 }
 
-Status RowsetBuilder::wait_calc_delete_bitmap() {
+Status BaseRowsetBuilder::wait_calc_delete_bitmap() {

Review Comment:
   warning: method 'wait_calc_delete_bitmap' can be made static [readability-convert-member-functions-to-static]
   
   be/src/olap/rowset_builder.h:64:
   ```diff
   -     Status wait_calc_delete_bitmap();
   +     static Status wait_calc_delete_bitmap();
   ```
   



##########
be/src/runtime/tablets_channel.h:
##########
@@ -17,7 +17,6 @@
 
 #pragma once
 
-#include <gen_cpp/internal_service.pb.h>
 #include <glog/logging.h>

Review Comment:
   warning: 'glog/logging.h' file not found [clang-diagnostic-error]
   ```cpp
   #include <glog/logging.h>
            ^
   ```
   



##########
be/src/olap/rowset_builder.cpp:
##########
@@ -331,9 +309,9 @@
     return Status::OK();
 }
 
-void RowsetBuilder::_build_current_tablet_schema(int64_t index_id,
-                                                 const OlapTableSchemaParam* table_schema_param,
-                                                 const TabletSchema& ori_tablet_schema) {
+void BaseRowsetBuilder::_build_current_tablet_schema(int64_t index_id,

Review Comment:
   warning: method '_build_current_tablet_schema' can be made static [readability-convert-member-functions-to-static]
   
   be/src/olap/rowset_builder.h:86:
   ```diff
   -     void _build_current_tablet_schema(int64_t index_id,
   +     static void _build_current_tablet_schema(int64_t index_id,
   ```
   



##########
be/src/olap/rowset/beta_rowset_writer.cpp:
##########
@@ -621,7 +637,7 @@
     return rowset;
 }
 
-Status BetaRowsetWriter::_create_file_writer(std::string path, io::FileWriterPtr& file_writer) {
+Status BaseBetaRowsetWriter::_create_file_writer(std::string path, io::FileWriterPtr& file_writer) {

Review Comment:
   warning: method '_create_file_writer' can be made static [readability-convert-member-functions-to-static]
   
   ```suggestion
   static Status BaseBetaRowsetWriter::_create_file_writer(std::string path, io::FileWriterPtr& file_writer) {
   ```
   



##########
be/src/runtime/load_stream_writer.h:
##########
@@ -32,16 +27,12 @@
 #include "brpc/stream.h"

Review Comment:
   warning: 'brpc/stream.h' file not found [clang-diagnostic-error]
   ```cpp
   #include "brpc/stream.h"
            ^
   ```
   



##########
be/src/runtime/tablets_channel.cpp:
##########
@@ -67,21 +67,41 @@ TabletsChannel::TabletsChannel(const TabletsChannelKey& key, const UniqueId& loa
     });
 }
 
-TabletsChannel::~TabletsChannel() {
+TabletsChannel::TabletsChannel(StorageEngine& engine, const TabletsChannelKey& key,
+                               const UniqueId& load_id, bool is_high_priority,
+                               RuntimeProfile* profile)
+        : BaseTabletsChannel(key, load_id, is_high_priority, profile), _engine(engine) {}
+
+BaseTabletsChannel::~BaseTabletsChannel() {

Review Comment:
   warning: use '= default' to define a trivial destructor [modernize-use-equals-default]
   ```cpp
   BaseTabletsChannel::~BaseTabletsChannel() {
                       ^
   ```
   



-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: commits-unsubscribe@doris.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org


---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@doris.apache.org
For additional commands, e-mail: commits-help@doris.apache.org


Re: [PR] [feature](merge-cloud) Refactor write path code by abstract base class [doris]

Posted by "platoneko (via GitHub)" <gi...@apache.org>.
platoneko commented on PR #26537:
URL: https://github.com/apache/doris/pull/26537#issuecomment-1800896169

   run buildall


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: commits-unsubscribe@doris.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org


---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@doris.apache.org
For additional commands, e-mail: commits-help@doris.apache.org


Re: [PR] [feature](merge-cloud) Refactor write path code by abstract base class [doris]

Posted by "doris-robot (via GitHub)" <gi...@apache.org>.
doris-robot commented on PR #26537:
URL: https://github.com/apache/doris/pull/26537#issuecomment-1801506607

   (From new machine)TeamCity pipeline, clickbench performance test result:
    the sum of best hot time: 45.11 seconds
    stream load tsv:          556 seconds loaded 74807831229 Bytes, about 128 MB/s
    stream load json:         21 seconds loaded 2358488459 Bytes, about 107 MB/s
    stream load orc:          65 seconds loaded 1101869774 Bytes, about 16 MB/s
    stream load parquet:          32 seconds loaded 861443392 Bytes, about 25 MB/s
    insert into select:          28.6 seconds inserted 10000000 Rows, about 349K ops/s
    storage size: 17162224719 Bytes


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: commits-unsubscribe@doris.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org


---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@doris.apache.org
For additional commands, e-mail: commits-help@doris.apache.org


Re: [PR] [feature](merge-cloud) Refactor write path code by abstract base class [doris]

Posted by "github-actions[bot] (via GitHub)" <gi...@apache.org>.
github-actions[bot] commented on code in PR #26537:
URL: https://github.com/apache/doris/pull/26537#discussion_r1417129605


##########
be/src/olap/rowset/segment_v2/segment_writer.cpp:
##########
@@ -336,11 +338,12 @@ void SegmentWriter::_serialize_block_to_row_column(vectorized::Block& block) {
 // 3. set columns to data convertor and then write all columns
 Status SegmentWriter::append_block_with_partial_content(const vectorized::Block* block,

Review Comment:
   warning: function 'append_block_with_partial_content' has cognitive complexity of 51 (threshold 50) [readability-function-cognitive-complexity]
   ```cpp
   Status SegmentWriter::append_block_with_partial_content(const vectorized::Block* block,
                         ^
   ```
   <details>
   <summary>Additional context</summary>
   
   **be/src/olap/rowset/segment_v2/segment_writer.cpp:340:** +1, including nesting penalty of 0, nesting level increased to 1
   ```cpp
       if constexpr (!std::is_same_v<ExecEnv::Engine, StorageEngine>) {
       ^
   ```
   **be/src/olap/rowset/segment_v2/segment_writer.cpp:346:** +1, including nesting penalty of 0, nesting level increased to 1
   ```cpp
       if (block->columns() <= _tablet_schema->num_key_columns() ||
       ^
   ```
   **be/src/olap/rowset/segment_v2/segment_writer.cpp:399:** +1, including nesting penalty of 0, nesting level increased to 1
   ```cpp
       if (const vectorized::ColumnWithTypeAndName* delete_sign_column =
       ^
   ```
   **be/src/olap/rowset/segment_v2/segment_writer.cpp:404:** +2, including nesting penalty of 1, nesting level increased to 2
   ```cpp
           if (delete_sign_col.size() >= row_pos + num_rows) {
           ^
   ```
   **be/src/olap/rowset/segment_v2/segment_writer.cpp:418:** +1, including nesting penalty of 0, nesting level increased to 1
   ```cpp
       for (size_t block_pos = row_pos; block_pos < row_pos + num_rows; block_pos++) {
       ^
   ```
   **be/src/olap/rowset/segment_v2/segment_writer.cpp:429:** +2, including nesting penalty of 1, nesting level increased to 2
   ```cpp
           if (have_input_seq_column) {
           ^
   ```
   **be/src/olap/rowset/segment_v2/segment_writer.cpp:435:** +2, including nesting penalty of 1, nesting level increased to 2
   ```cpp
           if (!_tablet_schema->has_sequence_col() || have_input_seq_column) {
           ^
   ```
   **be/src/olap/rowset/segment_v2/segment_writer.cpp:436:** +3, including nesting penalty of 2, nesting level increased to 3
   ```cpp
               RETURN_IF_ERROR(_primary_key_index_builder->add_item(key));
               ^
   ```
   **be/src/common/status.h:532:** expanded from macro 'RETURN_IF_ERROR'
   ```cpp
       do {                                \
       ^
   ```
   **be/src/olap/rowset/segment_v2/segment_writer.cpp:436:** +4, including nesting penalty of 3, nesting level increased to 4
   ```cpp
               RETURN_IF_ERROR(_primary_key_index_builder->add_item(key));
               ^
   ```
   **be/src/common/status.h:534:** expanded from macro 'RETURN_IF_ERROR'
   ```cpp
           if (UNLIKELY(!_status_.ok())) { \
           ^
   ```
   **be/src/olap/rowset/segment_v2/segment_writer.cpp:441:** +1
   ```cpp
                   (delete_sign_column_data != nullptr && delete_sign_column_data[block_pos] != 0);
                                                       ^
   ```
   **be/src/olap/rowset/segment_v2/segment_writer.cpp:448:** +2, including nesting penalty of 1, nesting level increased to 2
   ```cpp
           if (st.is<KEY_NOT_FOUND>()) {
           ^
   ```
   **be/src/olap/rowset/segment_v2/segment_writer.cpp:449:** +3, including nesting penalty of 2, nesting level increased to 3
   ```cpp
               if (_opts.rowset_ctx->partial_update_info->is_strict_mode) {
               ^
   ```
   **be/src/olap/rowset/segment_v2/segment_writer.cpp:457:** +3, including nesting penalty of 2, nesting level increased to 3
   ```cpp
               if (!_opts.rowset_ctx->partial_update_info->can_insert_new_rows_in_partial_update) {
               ^
   ```
   **be/src/olap/rowset/segment_v2/segment_writer.cpp:466:** +2, including nesting penalty of 1, nesting level increased to 2
   ```cpp
           if (!st.ok() && !st.is<KEY_ALREADY_EXISTS>()) {
           ^
   ```
   **be/src/olap/rowset/segment_v2/segment_writer.cpp:474:** +2, including nesting penalty of 1, nesting level increased to 2
   ```cpp
           if (have_delete_sign) {
           ^
   ```
   **be/src/olap/rowset/segment_v2/segment_writer.cpp:477:** +1, nesting level increased to 2
   ```cpp
           } else {
             ^
   ```
   **be/src/olap/rowset/segment_v2/segment_writer.cpp:484:** +2, including nesting penalty of 1, nesting level increased to 2
   ```cpp
           if (st.is<KEY_ALREADY_EXISTS>()) {
           ^
   ```
   **be/src/olap/rowset/segment_v2/segment_writer.cpp:490:** +1, nesting level increased to 2
   ```cpp
           } else {
             ^
   ```
   **be/src/olap/rowset/segment_v2/segment_writer.cpp:497:** +1, including nesting penalty of 0, nesting level increased to 1
   ```cpp
       if (config::enable_merge_on_write_correctness_check) {
       ^
   ```
   **be/src/olap/rowset/segment_v2/segment_writer.cpp:504:** +1, including nesting penalty of 0, nesting level increased to 1
   ```cpp
       RETURN_IF_ERROR(fill_missing_columns(mutable_full_columns, use_default_or_null_flag,
       ^
   ```
   **be/src/common/status.h:532:** expanded from macro 'RETURN_IF_ERROR'
   ```cpp
       do {                                \
       ^
   ```
   **be/src/olap/rowset/segment_v2/segment_writer.cpp:504:** +2, including nesting penalty of 1, nesting level increased to 2
   ```cpp
       RETURN_IF_ERROR(fill_missing_columns(mutable_full_columns, use_default_or_null_flag,
       ^
   ```
   **be/src/common/status.h:534:** expanded from macro 'RETURN_IF_ERROR'
   ```cpp
           if (UNLIKELY(!_status_.ok())) { \
           ^
   ```
   **be/src/olap/rowset/segment_v2/segment_writer.cpp:507:** +1, including nesting penalty of 0, nesting level increased to 1
   ```cpp
       if (_tablet_schema->store_row_column()) {
       ^
   ```
   **be/src/olap/rowset/segment_v2/segment_writer.cpp:531:** +1, including nesting penalty of 0, nesting level increased to 1
   ```cpp
       if (_tablet_schema->has_sequence_col() && !have_input_seq_column) {
       ^
   ```
   **be/src/olap/rowset/segment_v2/segment_writer.cpp:538:** +2, including nesting penalty of 1, nesting level increased to 2
   ```cpp
           if (_num_rows_written != row_pos ||
           ^
   ```
   **be/src/olap/rowset/segment_v2/segment_writer.cpp:545:** +2, including nesting penalty of 1, nesting level increased to 2
   ```cpp
           for (size_t block_pos = row_pos; block_pos < row_pos + num_rows; block_pos++) {
           ^
   ```
   **be/src/olap/rowset/segment_v2/segment_writer.cpp:548:** +3, including nesting penalty of 2, nesting level increased to 3
   ```cpp
               RETURN_IF_ERROR(_primary_key_index_builder->add_item(key));
               ^
   ```
   **be/src/common/status.h:532:** expanded from macro 'RETURN_IF_ERROR'
   ```cpp
       do {                                \
       ^
   ```
   **be/src/olap/rowset/segment_v2/segment_writer.cpp:548:** +4, including nesting penalty of 3, nesting level increased to 4
   ```cpp
               RETURN_IF_ERROR(_primary_key_index_builder->add_item(key));
               ^
   ```
   **be/src/common/status.h:534:** expanded from macro 'RETURN_IF_ERROR'
   ```cpp
           if (UNLIKELY(!_status_.ok())) { \
           ^
   ```
   
   </details>
   



##########
be/src/runtime/tablets_channel.cpp:
##########
@@ -479,8 +494,8 @@ std::ostream& operator<<(std::ostream& os, const TabletsChannelKey& key) {
     return os;
 }
 
-Status TabletsChannel::add_batch(const PTabletWriterAddBlockRequest& request,
-                                 PTabletWriterAddBlockResult* response) {
+Status BaseTabletsChannel::add_batch(const PTabletWriterAddBlockRequest& request,

Review Comment:
   warning: function 'add_batch' exceeds recommended size/complexity thresholds [readability-function-size]
   ```cpp
   Status BaseTabletsChannel::add_batch(const PTabletWriterAddBlockRequest& request,
                              ^
   ```
   <details>
   <summary>Additional context</summary>
   
   **be/src/runtime/tablets_channel.cpp:496:** 87 lines including whitespace and comments (threshold 80)
   ```cpp
   Status BaseTabletsChannel::add_batch(const PTabletWriterAddBlockRequest& request,
                              ^
   ```
   
   </details>
   



-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: commits-unsubscribe@doris.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org


---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@doris.apache.org
For additional commands, e-mail: commits-help@doris.apache.org


Re: [PR] [feature](merge-cloud) Refactor write path code by abstract base class [doris]

Posted by "doris-robot (via GitHub)" <gi...@apache.org>.
doris-robot commented on PR #26537:
URL: https://github.com/apache/doris/pull/26537#issuecomment-1844479514

   
   <details>
   <summary>TPC-H test result on machine: 'aliyun_ecs.c7a.8xlarge_32C64G'</summary>
   
   ```
   Tpch sf100 test result on commit 9f5c79f3cb9b422b5b5ed05babf0431949a82748, data reload: false
   
   run tpch-sf100 query with default conf and session variables
   q1	4699	4426	4445	4426
   q2	367	148	159	148
   q3	1475	1269	1222	1222
   q4	1126	925	925	925
   q5	3193	3196	3192	3192
   q6	249	131	130	130
   q7	1008	507	497	497
   q8	2201	2224	2185	2185
   q9	6664	6711	6714	6711
   q10	3216	3284	3264	3264
   q11	324	202	205	202
   q12	349	211	214	211
   q13	4552	3855	3808	3808
   q14	241	209	217	209
   q15	567	525	527	525
   q16	439	378	387	378
   q17	1013	579	614	579
   q18	7409	6929	6971	6929
   q19	1508	1400	1381	1381
   q20	1994	322	316	316
   q21	3126	2715	2641	2641
   q22	352	296	293	293
   Total cold run time: 46072 ms
   Total hot run time: 40172 ms
   
   run tpch-sf100 query with default conf and set session variable runtime_filter_mode=off
   q1	4398	4395	4401	4395
   q2	266	163	169	163
   q3	3529	3529	3519	3519
   q4	2378	2371	2384	2371
   q5	5721	5774	5727	5727
   q6	241	118	120	118
   q7	2398	1883	1839	1839
   q8	3523	3516	3503	3503
   q9	9004	9019	9054	9019
   q10	3898	3984	4011	3984
   q11	501	397	376	376
   q12	766	595	600	595
   q13	4316	3580	3586	3580
   q14	289	257	255	255
   q15	573	524	513	513
   q16	505	449	465	449
   q17	1885	1862	1855	1855
   q18	8735	8338	8488	8338
   q19	1703	1767	1748	1748
   q20	2250	1954	1928	1928
   q21	6523	6181	6170	6170
   q22	494	460	444	444
   Total cold run time: 63896 ms
   Total hot run time: 60889 ms
   ```
   </details>
   


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: commits-unsubscribe@doris.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org


---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@doris.apache.org
For additional commands, e-mail: commits-help@doris.apache.org


Re: [PR] [feature](merge-cloud) Refactor write path code by abstract base class [doris]

Posted by "doris-robot (via GitHub)" <gi...@apache.org>.
doris-robot commented on PR #26537:
URL: https://github.com/apache/doris/pull/26537#issuecomment-1844445865

   (From new machine)TeamCity pipeline, clickbench performance test result:
    the sum of best hot time: 44.57 seconds
    stream load tsv:          586 seconds loaded 74807831229 Bytes, about 121 MB/s
    stream load json:         19 seconds loaded 2358488459 Bytes, about 118 MB/s
    stream load orc:          66 seconds loaded 1101869774 Bytes, about 15 MB/s
    stream load parquet:          32 seconds loaded 861443392 Bytes, about 25 MB/s
    insert into select:          28.8 seconds inserted 10000000 Rows, about 347K ops/s
    storage size: 17194357074 Bytes


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: commits-unsubscribe@doris.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org


---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@doris.apache.org
For additional commands, e-mail: commits-help@doris.apache.org


Re: [PR] [feature](merge-cloud) Refactor write path code by abstract base class [doris]

Posted by "doris-robot (via GitHub)" <gi...@apache.org>.
doris-robot commented on PR #26537:
URL: https://github.com/apache/doris/pull/26537#issuecomment-1845329170

   
   <details>
   <summary>TPC-H test result on machine: 'aliyun_ecs.c7a.8xlarge_32C64G'</summary>
   
   ```
   Tpch sf100 test result on commit 3d84552f479ac234b2f0347762888a8e57682333, data reload: false
   
   run tpch-sf100 query with default conf and session variables
   q1	4686	4444	4459	4444
   q2	360	154	158	154
   q3	1477	1285	1259	1259
   q4	1131	937	927	927
   q5	3147	3188	3202	3188
   q6	246	127	128	127
   q7	992	498	488	488
   q8	2216	2243	2185	2185
   q9	6670	6654	6668	6654
   q10	3184	3236	3264	3236
   q11	329	217	202	202
   q12	369	213	217	213
   q13	4557	3824	3852	3824
   q14	272	235	249	235
   q15	602	541	547	541
   q16	533	469	487	469
   q17	1038	601	554	554
   q18	7669	7446	8723	7446
   q19	1504	1399	1402	1399
   q20	534	304	295	295
   q21	3095	2654	2690	2654
   q22	357	293	293	293
   Total cold run time: 44968 ms
   Total hot run time: 40787 ms
   
   run tpch-sf100 query with default conf and set session variable runtime_filter_mode=off
   q1	4383	4377	4360	4360
   q2	267	165	169	165
   q3	3525	3511	3525	3511
   q4	2374	2357	2354	2354
   q5	5721	5731	5713	5713
   q6	242	122	120	120
   q7	2355	1864	1826	1826
   q8	3514	3520	3522	3520
   q9	9042	9002	9034	9002
   q10	3879	3975	4015	3975
   q11	504	402	381	381
   q12	767	584	615	584
   q13	4293	3579	3562	3562
   q14	274	261	268	261
   q15	574	517	510	510
   q16	498	431	467	431
   q17	1852	1839	1839	1839
   q18	8746	8082	8278	8082
   q19	1727	1738	1735	1735
   q20	2237	1929	1933	1929
   q21	6539	6186	6117	6117
   q22	506	435	416	416
   Total cold run time: 63819 ms
   Total hot run time: 60393 ms
   ```
   </details>
   


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: commits-unsubscribe@doris.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org


---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@doris.apache.org
For additional commands, e-mail: commits-help@doris.apache.org


Re: [PR] [feature](merge-cloud) Refactor write path code by abstract base class [doris]

Posted by "github-actions[bot] (via GitHub)" <gi...@apache.org>.
github-actions[bot] commented on code in PR #26537:
URL: https://github.com/apache/doris/pull/26537#discussion_r1385102803


##########
be/src/runtime/load_stream.h:
##########
@@ -17,8 +17,8 @@
 
 #pragma once
 
+#include <bthread/mutex.h>

Review Comment:
   warning: 'bthread/mutex.h' file not found [clang-diagnostic-error]
   ```cpp
   #include <bthread/mutex.h>
            ^
   ```
   



-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: commits-unsubscribe@doris.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org


---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@doris.apache.org
For additional commands, e-mail: commits-help@doris.apache.org


Re: [PR] [feature](merge-cloud) Refactor write path code by abstract base class [doris]

Posted by "platoneko (via GitHub)" <gi...@apache.org>.
platoneko commented on PR #26537:
URL: https://github.com/apache/doris/pull/26537#issuecomment-1836002263

   run buildall


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: commits-unsubscribe@doris.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org


---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@doris.apache.org
For additional commands, e-mail: commits-help@doris.apache.org


Re: [PR] [feature](merge-cloud) Refactor write path code by abstract base class [doris]

Posted by "doris-robot (via GitHub)" <gi...@apache.org>.
doris-robot commented on PR #26537:
URL: https://github.com/apache/doris/pull/26537#issuecomment-1838519149

   
   <details>
   <summary>TPC-H test result on machine: 'aliyun_ecs.c7a.8xlarge_32C64G'</summary>
   
   ```
   Tpch sf100 test result on commit 3e4ec03101b95d372d1e0e5978890e9976488175, data reload: false
   
   run tpch-sf100 query with default conf and session variables
   q1	4957	4664	4632	4632
   q2	358	156	155	155
   q3	1532	1304	1319	1304
   q4	1153	947	955	947
   q5	3258	3280	3279	3279
   q6	247	131	132	131
   q7	1026	512	497	497
   q8	2283	2256	2241	2241
   q9	6948	6933	6930	6930
   q10	3294	3375	3367	3367
   q11	342	216	214	214
   q12	359	213	212	212
   q13	4634	3877	3887	3877
   q14	255	221	224	221
   q15	590	545	520	520
   q16	446	368	395	368
   q17	1045	629	622	622
   q18	8024	7590	7889	7590
   q19	1581	1513	1557	1513
   q20	593	358	312	312
   q21	3446	2979	2992	2979
   q22	389	306	316	306
   Total cold run time: 46760 ms
   Total hot run time: 42217 ms
   
   run tpch-sf100 query with default conf and set session variable runtime_filter_mode=off
   q1	4591	4583	4635	4583
   q2	321	230	247	230
   q3	3753	3743	3731	3731
   q4	2520	2495	2488	2488
   q5	6194	6176	6172	6172
   q6	246	125	128	125
   q7	2629	1950	1959	1950
   q8	3747	3714	3645	3645
   q9	9318	9318	9304	9304
   q10	4083	4187	4197	4187
   q11	654	513	499	499
   q12	808	634	628	628
   q13	4399	3639	3657	3639
   q14	275	242	246	242
   q15	588	523	531	523
   q16	529	468	477	468
   q17	2063	2083	2054	2054
   q18	9508	9487	8937	8937
   q19	1808	1778	1744	1744
   q20	2328	1991	1970	1970
   q21	7403	7064	7015	7015
   q22	633	573	570	570
   Total cold run time: 68398 ms
   Total hot run time: 64704 ms
   ```
   </details>
   


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: commits-unsubscribe@doris.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org


---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@doris.apache.org
For additional commands, e-mail: commits-help@doris.apache.org


Re: [PR] [feature](merge-cloud) Refactor write path code by abstract base class [doris]

Posted by "platoneko (via GitHub)" <gi...@apache.org>.
platoneko commented on PR #26537:
URL: https://github.com/apache/doris/pull/26537#issuecomment-1845181642

   run buildall


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: commits-unsubscribe@doris.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org


---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@doris.apache.org
For additional commands, e-mail: commits-help@doris.apache.org


Re: [PR] [feature](merge-cloud) Refactor write path code by abstract base class [doris]

Posted by "jackwener (via GitHub)" <gi...@apache.org>.
jackwener merged PR #26537:
URL: https://github.com/apache/doris/pull/26537


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: commits-unsubscribe@doris.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org


---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@doris.apache.org
For additional commands, e-mail: commits-help@doris.apache.org


Re: [PR] [feature](merge-cloud) Refactor write path code by abstract base class [doris]

Posted by "doris-robot (via GitHub)" <gi...@apache.org>.
doris-robot commented on PR #26537:
URL: https://github.com/apache/doris/pull/26537#issuecomment-1801424999

   TeamCity be ut coverage result:
    Function Coverage: 36.73% (8399/22869) 
    Line Coverage: 29.22% (68046/232841)
    Region Coverage: 27.87% (35174/126200)
    Branch Coverage: 24.71% (17986/72802)
    Coverage Report: http://coverage.selectdb-in.cc/coverage/b2c3c880fab8ba85e58ba17bd3a1c29789316d86_b2c3c880fab8ba85e58ba17bd3a1c29789316d86/report/index.html


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: commits-unsubscribe@doris.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org


---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@doris.apache.org
For additional commands, e-mail: commits-help@doris.apache.org


Re: [PR] [feature](merge-cloud) Refactor write path code by abstract base class [doris]

Posted by "doris-robot (via GitHub)" <gi...@apache.org>.
doris-robot commented on PR #26537:
URL: https://github.com/apache/doris/pull/26537#issuecomment-1798449424

   TeamCity be ut coverage result:
    Function Coverage: 37.07% (8408/22681) 
    Line Coverage: 29.48% (68013/230737)
    Region Coverage: 28.17% (35198/124953)
    Branch Coverage: 24.97% (17991/72064)
    Coverage Report: http://coverage.selectdb-in.cc/coverage/420c7db48198d8430243b9d5fb0634d9197681ea_420c7db48198d8430243b9d5fb0634d9197681ea/report/index.html


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: commits-unsubscribe@doris.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org


---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@doris.apache.org
For additional commands, e-mail: commits-help@doris.apache.org


Re: [PR] [feature](merge-cloud) Refactor write path code by abstract base class [doris]

Posted by "platoneko (via GitHub)" <gi...@apache.org>.
platoneko commented on PR #26537:
URL: https://github.com/apache/doris/pull/26537#issuecomment-1798518592

   run buildall


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: commits-unsubscribe@doris.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org


---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@doris.apache.org
For additional commands, e-mail: commits-help@doris.apache.org


Re: [PR] [feature](merge-cloud) Refactor write path code by abstract base class [doris]

Posted by "doris-robot (via GitHub)" <gi...@apache.org>.
doris-robot commented on PR #26537:
URL: https://github.com/apache/doris/pull/26537#issuecomment-1798554051

   TeamCity be ut coverage result:
    Function Coverage: 37.04% (8400/22681) 
    Line Coverage: 29.44% (67932/230737)
    Region Coverage: 28.12% (35142/124953)
    Branch Coverage: 24.91% (17953/72064)
    Coverage Report: http://coverage.selectdb-in.cc/coverage/28f00df01f5d3308f1385281470c16847b61e597_28f00df01f5d3308f1385281470c16847b61e597/report/index.html


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: commits-unsubscribe@doris.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org


---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@doris.apache.org
For additional commands, e-mail: commits-help@doris.apache.org


Re: [PR] [feature](merge-cloud) Refactor write path code by abstract base class [doris]

Posted by "platoneko (via GitHub)" <gi...@apache.org>.
platoneko commented on PR #26537:
URL: https://github.com/apache/doris/pull/26537#issuecomment-1798370364

   run buildall


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: commits-unsubscribe@doris.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org


---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@doris.apache.org
For additional commands, e-mail: commits-help@doris.apache.org