You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@doris.apache.org by da...@apache.org on 2024/10/31 01:53:53 UTC

(doris) branch branch-2.1 updated: [chore](ddl) support force_enable_feature_binlog #41796 (#42926)

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

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


The following commit(s) were added to refs/heads/branch-2.1 by this push:
     new ae88d032db3 [chore](ddl) support force_enable_feature_binlog #41796 (#42926)
ae88d032db3 is described below

commit ae88d032db3f1066cc4e40e793aaa79674f86380
Author: walter <w4...@gmail.com>
AuthorDate: Thu Oct 31 09:53:45 2024 +0800

    [chore](ddl) support force_enable_feature_binlog #41796 (#42926)
    
    cherry pick from #41796
---
 fe/fe-common/src/main/java/org/apache/doris/common/Config.java     | 5 +++++
 .../src/main/java/org/apache/doris/analysis/CreateDbStmt.java      | 7 +++++++
 fe/fe-core/src/main/java/org/apache/doris/catalog/Database.java    | 3 +++
 3 files changed, 15 insertions(+)

diff --git a/fe/fe-common/src/main/java/org/apache/doris/common/Config.java b/fe/fe-common/src/main/java/org/apache/doris/common/Config.java
index cac5355a970..c5f2f06e1ac 100644
--- a/fe/fe-common/src/main/java/org/apache/doris/common/Config.java
+++ b/fe/fe-common/src/main/java/org/apache/doris/common/Config.java
@@ -2345,6 +2345,11 @@ public class Config extends ConfigBase {
             "Whether to enable binlog feature"})
     public static boolean enable_feature_binlog = false;
 
+    @ConfField(mutable = false, description = {
+            "是否默认为 Database/Table 启用binlog特性",
+            "Whether to enable binlog feature for Database/Table by default"})
+    public static boolean force_enable_feature_binlog = false;
+
     @ConfField(mutable = false, masterOnly = false, varType = VariableAnnotation.EXPERIMENTAL, description = {
         "设置 binlog 消息最字节长度",
         "Set the maximum byte length of binlog message"})
diff --git a/fe/fe-core/src/main/java/org/apache/doris/analysis/CreateDbStmt.java b/fe/fe-core/src/main/java/org/apache/doris/analysis/CreateDbStmt.java
index 09ae61a1ee1..9bacd07826f 100644
--- a/fe/fe-core/src/main/java/org/apache/doris/analysis/CreateDbStmt.java
+++ b/fe/fe-core/src/main/java/org/apache/doris/analysis/CreateDbStmt.java
@@ -18,12 +18,14 @@
 package org.apache.doris.analysis;
 
 import org.apache.doris.catalog.Env;
+import org.apache.doris.common.Config;
 import org.apache.doris.common.ErrorCode;
 import org.apache.doris.common.ErrorReport;
 import org.apache.doris.common.FeNameFormat;
 import org.apache.doris.common.UserException;
 import org.apache.doris.common.util.InternalDatabaseUtil;
 import org.apache.doris.common.util.PrintableMap;
+import org.apache.doris.common.util.PropertyAnalyzer;
 import org.apache.doris.mysql.privilege.PrivPredicate;
 import org.apache.doris.qe.ConnectContext;
 
@@ -43,6 +45,11 @@ public class CreateDbStmt extends DdlStmt {
         this.ctlName = dbName.getCtl();
         this.dbName = dbName.getDb();
         this.properties = properties == null ? new HashMap<>() : properties;
+
+        if (Config.force_enable_feature_binlog
+                && !this.properties.containsKey(PropertyAnalyzer.PROPERTIES_BINLOG_ENABLE)) {
+            this.properties.put(PropertyAnalyzer.PROPERTIES_BINLOG_ENABLE, "true");
+        }
     }
 
     public String getFullDbName() {
diff --git a/fe/fe-core/src/main/java/org/apache/doris/catalog/Database.java b/fe/fe-core/src/main/java/org/apache/doris/catalog/Database.java
index bf62c3fcdac..a4d8e5f0302 100644
--- a/fe/fe-core/src/main/java/org/apache/doris/catalog/Database.java
+++ b/fe/fe-core/src/main/java/org/apache/doris/catalog/Database.java
@@ -273,6 +273,9 @@ public class Database extends MetaObject implements Writable, DatabaseIf<Table>
 
     public void setDbProperties(DatabaseProperty dbProperties) {
         this.dbProperties = dbProperties;
+        if (PropertyAnalyzer.hasBinlogConfig(dbProperties.getProperties())) {
+            binlogConfig = dbProperties.getBinlogConfig();
+        }
     }
 
     public long getUsedDataQuotaWithLock() {


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