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

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


The following commit(s) were added to refs/heads/branch-2.0 by this push:
     new 9f0122f36b [fix][alter table property] fix alter table property failed 
(#22791)
9f0122f36b is described below

commit 9f0122f36b16c89acf82f390261745f74ceb5e50
Author: Chenyang Sun <csun5...@gmail.com>
AuthorDate: Thu Aug 10 17:12:42 2023 +0800

    [fix][alter table property] fix alter table property failed (#22791)
---
 .../main/java/org/apache/doris/alter/SchemaChangeHandler.java | 11 ++++++-----
 .../src/main/java/org/apache/doris/catalog/TableProperty.java |  4 ++++
 .../compaction/test_table_level_compaction_policy.groovy      | 11 +++++++++++
 3 files changed, 21 insertions(+), 5 deletions(-)

diff --git 
a/fe/fe-core/src/main/java/org/apache/doris/alter/SchemaChangeHandler.java 
b/fe/fe-core/src/main/java/org/apache/doris/alter/SchemaChangeHandler.java
index df7fdc81c0..61865df13a 100644
--- a/fe/fe-core/src/main/java/org/apache/doris/alter/SchemaChangeHandler.java
+++ b/fe/fe-core/src/main/java/org/apache/doris/alter/SchemaChangeHandler.java
@@ -2166,16 +2166,17 @@ public class SchemaChangeHandler extends AlterHandler {
                         
.get(PropertyAnalyzer.PROPERTIES_TIME_SERIES_COMPACTION_TIME_THRESHOLD_SECONDS)));
         }
 
+        if (isInMemory < 0 && storagePolicyId < 0 && compactionPolicy == null 
&& timeSeriesCompactionConfig.isEmpty()
+                && 
!properties.containsKey(PropertyAnalyzer.PROPERTIES_IS_BEING_SYNCED)) {
+            LOG.info("Properties already up-to-date");
+            return;
+        }
+
         for (Partition partition : partitions) {
             updatePartitionProperties(db, olapTable.getName(), 
partition.getName(), storagePolicyId, isInMemory,
                                         null, compactionPolicy, 
timeSeriesCompactionConfig);
         }
 
-        if (isInMemory < 0 && storagePolicyId < 0 && compactionPolicy == null 
&& timeSeriesCompactionConfig.isEmpty()) {
-            LOG.info("Properties already up-to-date");
-            return;
-        }
-
         olapTable.writeLockOrDdlException();
         try {
             Env.getCurrentEnv().modifyTableProperties(db, olapTable, 
properties);
diff --git 
a/fe/fe-core/src/main/java/org/apache/doris/catalog/TableProperty.java 
b/fe/fe-core/src/main/java/org/apache/doris/catalog/TableProperty.java
index c8b6cdb53e..a264332753 100644
--- a/fe/fe-core/src/main/java/org/apache/doris/catalog/TableProperty.java
+++ b/fe/fe-core/src/main/java/org/apache/doris/catalog/TableProperty.java
@@ -124,6 +124,10 @@ public class TableProperty implements Writable {
                 buildInMemory();
                 buildStoragePolicy();
                 buildIsBeingSynced();
+                buildCompactionPolicy();
+                buildTimeSeriesCompactionGoalSizeMbytes();
+                buildTimeSeriesCompactionFileCountThreshold();
+                buildTimeSeriesCompactionTimeThresholdSeconds();
                 break;
             default:
                 break;
diff --git 
a/regression-test/suites/compaction/test_table_level_compaction_policy.groovy 
b/regression-test/suites/compaction/test_table_level_compaction_policy.groovy
index f2df7fe9bb..5bb33eebf2 100644
--- 
a/regression-test/suites/compaction/test_table_level_compaction_policy.groovy
+++ 
b/regression-test/suites/compaction/test_table_level_compaction_policy.groovy
@@ -38,6 +38,8 @@ suite("test_table_level_compaction_policy") {
                     "time_series_compaction_time_threshold_seconds" = "86400"
              );
         """
+    sql """sync"""
+
     def showResult1 = sql """show create table ${tableName}"""
     logger.info("${showResult1}")
     assertTrue(showResult1.toString().containsIgnoreCase('"compaction_policy" 
= "time_series"'))
@@ -48,6 +50,7 @@ suite("test_table_level_compaction_policy") {
     sql """
         alter table ${tableName} set 
("time_series_compaction_goal_size_mbytes" = "1024")
         """
+    sql """sync"""
 
     def showResult2 = sql """show create table ${tableName}"""
     logger.info("${showResult2}")
@@ -56,6 +59,7 @@ suite("test_table_level_compaction_policy") {
     sql """
         alter table ${tableName} set 
("time_series_compaction_file_count_threshold" = "6000")
         """
+    sql """sync"""
 
     def showResult3 = sql """show create table ${tableName}"""
     logger.info("${showResult3}")
@@ -64,12 +68,14 @@ suite("test_table_level_compaction_policy") {
      sql """
         alter table ${tableName} set 
("time_series_compaction_time_threshold_seconds" = "3000")
         """
+    sql """sync"""
 
     def showResult4 = sql """show create table ${tableName}"""
     logger.info("${showResult4}")
     
assertTrue(showResult4.toString().containsIgnoreCase('"time_series_compaction_time_threshold_seconds"
 = "3000"'))
 
     sql """ DROP TABLE IF EXISTS ${tableName} """
+    sql """sync"""
 
     sql """
             CREATE TABLE ${tableName} (
@@ -84,11 +90,14 @@ suite("test_table_level_compaction_policy") {
                     "replication_num" = "1"
              );
         """
+    sql """sync"""
+
     def showResult5 = sql """show create table ${tableName}"""
     logger.info("${showResult5}")
     
assertFalse(showResult5.toString().containsIgnoreCase('"compaction_policy"'))
 
     sql """ DROP TABLE IF EXISTS ${tableName} """
+    sql """sync"""
 
     test {
         sql """
@@ -197,6 +206,7 @@ suite("test_table_level_compaction_policy") {
                     "replication_num" = "1"
              );
         """
+        sql """sync"""
 
         sql """
             alter table  ${tableName} set ("compaction_policy" = "ok")
@@ -204,4 +214,5 @@ suite("test_table_level_compaction_policy") {
         exception "Table compaction policy only support for time_series or 
size_based"
     }
     sql """ DROP TABLE IF EXISTS ${tableName} """
+    sql """sync"""
 }


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

Reply via email to