This is an automated email from the ASF dual-hosted git repository.

yiguolei pushed a commit to branch branch-4.1
in repository https://gitbox.apache.org/repos/asf/doris.git


The following commit(s) were added to refs/heads/branch-4.1 by this push:
     new 18c36546541 branch-4.1: [fix](test) fix some routine load case 
unstable (#63803)
18c36546541 is described below

commit 18c36546541b870f34b00d321d20ab0cb2b53725
Author: hui lai <[email protected]>
AuthorDate: Fri May 29 12:19:38 2026 +0800

    branch-4.1: [fix](test) fix some routine load case unstable (#63803)
    
    ### What problem does this PR solve?
    
    pick https://github.com/apache/doris/pull/61432
    
    ### Release note
    
    None
    
    ### Check List (For Author)
    
    - Test <!-- At least one of them must be included. -->
        - [ ] Regression test
        - [ ] Unit Test
        - [ ] Manual test (add detailed scripts or steps below)
        - [ ] No need to test or manual test. Explain why:
    - [ ] This is a refactor/code format and no logic has been changed.
            - [ ] Previous test can cover this change.
            - [ ] No code files have been changed.
            - [ ] Other reason <!-- Add your reason?  -->
    
    - Behavior changed:
        - [ ] No.
        - [ ] Yes. <!-- Explain the behavior change -->
    
    - Does this need documentation?
        - [ ] No.
    - [ ] Yes. <!-- Add document PR link here. eg:
    https://github.com/apache/doris-website/pull/1214 -->
    
    ### Check List (For Reviewer who merge this PR)
    
    - [ ] Confirm the release note
    - [ ] Confirm test cases
    - [ ] Confirm document
    - [ ] Add branch pick label <!-- Add branch pick label that this PR
    should merge into -->
---
 be/src/cloud/cloud_rowset_builder.cpp                          |  2 ++
 be/src/load/routine_load/data_consumer.cpp                     | 10 +++++++---
 .../suites/load_p0/routine_load/test_black_list.groovy         |  4 ++--
 3 files changed, 11 insertions(+), 5 deletions(-)

diff --git a/be/src/cloud/cloud_rowset_builder.cpp 
b/be/src/cloud/cloud_rowset_builder.cpp
index 1f73d11d20e..8d87a4fa4c5 100644
--- a/be/src/cloud/cloud_rowset_builder.cpp
+++ b/be/src/cloud/cloud_rowset_builder.cpp
@@ -98,6 +98,8 @@ Status CloudRowsetBuilder::init() {
 
 Status CloudRowsetBuilder::check_tablet_version_count() {
     int64_t version_count = 
cloud_tablet()->fetch_add_approximate_num_rowsets(0);
+    
DBUG_EXECUTE_IF("RowsetBuilder.check_tablet_version_count.too_many_version",
+                    { version_count = INT_MAX; });
     // TODO(plat1ko): load backoff algorithm
     int32_t max_version_config = cloud_tablet()->max_version_config();
     if (version_count > max_version_config) {
diff --git a/be/src/load/routine_load/data_consumer.cpp 
b/be/src/load/routine_load/data_consumer.cpp
index 1f7265b2d8a..a8a3808335d 100644
--- a/be/src/load/routine_load/data_consumer.cpp
+++ b/be/src/load/routine_load/data_consumer.cpp
@@ -459,9 +459,9 @@ Status KafkaDataConsumer::get_offsets_for_times(const 
std::vector<PIntegerPair>&
 Status KafkaDataConsumer::get_latest_offsets_for_partitions(
         const std::vector<int32_t>& partition_ids, std::vector<PIntegerPair>* 
offsets,
         int timeout) {
-    
DBUG_EXECUTE_IF("KafkaDataConsumer.get_latest_offsets_for_partitions.timeout", {
-        // sleep 60s
-        std::this_thread::sleep_for(std::chrono::seconds(60));
+    DBUG_EXECUTE_IF("KafkaDataConsumer.get_offsets_for_partitions.timeout", {
+        // sleep 61s
+        std::this_thread::sleep_for(std::chrono::seconds(61));
     });
     MonotonicStopWatch watch;
     watch.start();
@@ -495,6 +495,10 @@ Status 
KafkaDataConsumer::get_latest_offsets_for_partitions(
 Status KafkaDataConsumer::get_real_offsets_for_partitions(
         const std::vector<PIntegerPair>& offset_flags, 
std::vector<PIntegerPair>* offsets,
         int timeout) {
+    DBUG_EXECUTE_IF("KafkaDataConsumer.get_offsets_for_partitions.timeout", {
+        // sleep 61s
+        std::this_thread::sleep_for(std::chrono::seconds(61));
+    });
     MonotonicStopWatch watch;
     watch.start();
     for (const auto& entry : offset_flags) {
diff --git a/regression-test/suites/load_p0/routine_load/test_black_list.groovy 
b/regression-test/suites/load_p0/routine_load/test_black_list.groovy
index 0e19cbca1e2..84c1a925caf 100644
--- a/regression-test/suites/load_p0/routine_load/test_black_list.groovy
+++ b/regression-test/suites/load_p0/routine_load/test_black_list.groovy
@@ -94,7 +94,7 @@ suite("test_black_list","nonConcurrent,p0") {
             PROPERTIES ("replication_allocation" = "tag.location.default: 1");
         """
 
-        def inject = 
"KafkaDataConsumer.get_latest_offsets_for_partitions.timeout"
+        def inject = "KafkaDataConsumer.get_offsets_for_partitions.timeout"
         try {
             GetDebugPoint().enableDebugPointForAllBEs(inject)
             sql """
@@ -116,7 +116,7 @@ suite("test_black_list","nonConcurrent,p0") {
                 log.info("routine load state: 
${state[0][8].toString()}".toString())
                 log.info("reason of state changed: 
${state[0][17].toString()}".toString())
                 log.info("other msg: ${state[0][19].toString()}".toString())
-                if (state[0][17].toString().contains("failed to get latest 
partition offset") || state[0][19].toString().contains("failed to get latest 
partition offset")) {
+                if (state[0][17].toString().contains("Failed to get real 
offsets of kafka topic") || state[0][19].toString().contains("Failed to get 
real offsets of kafka topic")) {
                     break
                 }
                 if (count >= 90) {


---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to