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

morningman pushed a commit to branch branch-1.2-lts
in repository https://gitbox.apache.org/repos/asf/doris.git


The following commit(s) were added to refs/heads/branch-1.2-lts by this push:
     new 2d0f9c0e54 [Fix](bucket)fix partition with no history data && 
AutoBucketUtilsTest (#16516)
2d0f9c0e54 is described below

commit 2d0f9c0e54b714c0dda70f525a3ce50de66122f8
Author: Drogon <[email protected]>
AuthorDate: Thu Feb 9 10:17:25 2023 +0800

    [Fix](bucket)fix partition with no history data && AutoBucketUtilsTest 
(#16516)
    
    fix partition with no history data && AutoBucketUtilsTest (#16515)
---
 .../org/apache/doris/clone/DynamicPartitionScheduler.java     | 11 +++++++++--
 .../org/apache/doris/common/util/AutoBucketUtilsTest.java     |  4 ++++
 2 files changed, 13 insertions(+), 2 deletions(-)

diff --git 
a/fe/fe-core/src/main/java/org/apache/doris/clone/DynamicPartitionScheduler.java
 
b/fe/fe-core/src/main/java/org/apache/doris/clone/DynamicPartitionScheduler.java
index 0640a82cca..3cbbe27c17 100644
--- 
a/fe/fe-core/src/main/java/org/apache/doris/clone/DynamicPartitionScheduler.java
+++ 
b/fe/fe-core/src/main/java/org/apache/doris/clone/DynamicPartitionScheduler.java
@@ -183,6 +183,8 @@ public class DynamicPartitionScheduler extends MasterDaemon 
{
             return property.getBuckets();
         }
 
+        // auto bucket
+        // get all history partitions
         List<Partition> partitions = Lists.newArrayList();
         RangePartitionInfo info = (RangePartitionInfo) 
(table.getPartitionInfo());
         List<Map.Entry<Long, PartitionItem>> idToItems = new 
ArrayList<>(info.getIdToItem(false).entrySet());
@@ -194,7 +196,7 @@ public class DynamicPartitionScheduler extends MasterDaemon 
{
             }
         }
 
-        // auto bucket
+        // no exist history partition
         if (partitions.size() == 0) {
             return property.getBuckets();
         }
@@ -206,7 +208,12 @@ public class DynamicPartitionScheduler extends 
MasterDaemon {
             }
         }
 
-        // * 5 for uncompressed data
+        // no exist history partition data
+        if (partitionSizeArray.size() == 0) {
+            return property.getBuckets();
+        }
+
+        // plus 5 for uncompressed data
         long uncompressedPartitionSize = 
getNextPartitionSize(partitionSizeArray) * 5;
         return AutoBucketUtils.getBucketsNum(uncompressedPartitionSize);
     }
diff --git 
a/fe/fe-core/src/test/java/org/apache/doris/common/util/AutoBucketUtilsTest.java
 
b/fe/fe-core/src/test/java/org/apache/doris/common/util/AutoBucketUtilsTest.java
index fa61bd48a2..d574f93a32 100644
--- 
a/fe/fe-core/src/test/java/org/apache/doris/common/util/AutoBucketUtilsTest.java
+++ 
b/fe/fe-core/src/test/java/org/apache/doris/common/util/AutoBucketUtilsTest.java
@@ -103,6 +103,10 @@ public class AutoBucketUtilsTest {
             ImmutableMap<Long, Backend> backends) {
         new Expectations() {
             {
+                Env.getServingEnv();
+                minTimes = 0;
+                result = env;
+
                 Env.getCurrentSystemInfo();
                 minTimes = 0;
                 result = systemInfoService;


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

Reply via email to