This is an automated email from the ASF dual-hosted git repository. morningman 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 34cb83fb6ef [feature](merge-cloud) Add init CloudEnv and CloudInternalCatalog (#29962) 34cb83fb6ef is described below commit 34cb83fb6ef8582082ad00096f1621662ab36d2d Author: yujun <yu.jun.re...@gmail.com> AuthorDate: Mon Jan 15 13:51:42 2024 +0800 [feature](merge-cloud) Add init CloudEnv and CloudInternalCatalog (#29962) --- .../main/java/org/apache/doris/catalog/Env.java | 6 ++-- .../java/org/apache/doris/catalog/EnvFactory.java | 39 ++++++++++++++++++++++ .../java/org/apache/doris/catalog/Partition.java | 4 +-- .../java/org/apache/doris/catalog/Replica.java | 2 +- .../org/apache/doris/datasource/CatalogMgr.java | 3 +- .../org/apache/doris/binlog/BinlogManagerTest.java | 3 +- .../statistics/StatisticsAutoCollectorTest.java | 5 +-- 7 files changed, 52 insertions(+), 10 deletions(-) diff --git a/fe/fe-core/src/main/java/org/apache/doris/catalog/Env.java b/fe/fe-core/src/main/java/org/apache/doris/catalog/Env.java index bc48e61ac4e..0f0eab8b672 100755 --- a/fe/fe-core/src/main/java/org/apache/doris/catalog/Env.java +++ b/fe/fe-core/src/main/java/org/apache/doris/catalog/Env.java @@ -625,7 +625,7 @@ public class Env { } private static class SingletonHolder { - private static final Env INSTANCE = new Env(); + private static final Env INSTANCE = EnvFactory.createEnv(false); } private Env() { @@ -633,7 +633,7 @@ public class Env { } // if isCheckpointCatalog is true, it means that we should not collect thread pool metric - private Env(boolean isCheckpointCatalog) { + public Env(boolean isCheckpointCatalog) { this.catalogMgr = new CatalogMgr(); this.load = new Load(); this.routineLoadManager = new RoutineLoadManager(); @@ -773,7 +773,7 @@ public class Env { // only checkpoint thread it self will goes here. // so no need to care about the thread safe. if (CHECKPOINT == null) { - CHECKPOINT = new Env(true); + CHECKPOINT = EnvFactory.createEnv(true); } return CHECKPOINT; } else { diff --git a/fe/fe-core/src/main/java/org/apache/doris/catalog/EnvFactory.java b/fe/fe-core/src/main/java/org/apache/doris/catalog/EnvFactory.java new file mode 100644 index 00000000000..703a71446f3 --- /dev/null +++ b/fe/fe-core/src/main/java/org/apache/doris/catalog/EnvFactory.java @@ -0,0 +1,39 @@ +// Licensed to the Apache Software Foundation (ASF) under one +// or more contributor license agreements. See the NOTICE file +// distributed with this work for additional information +// regarding copyright ownership. The ASF licenses this file +// to you under the Apache License, Version 2.0 (the +// "License"); you may not use this file except in compliance +// with the License. You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, +// software distributed under the License is distributed on an +// "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY +// KIND, either express or implied. See the License for the +// specific language governing permissions and limitations +// under the License. + +package org.apache.doris.catalog; + +import org.apache.doris.datasource.InternalCatalog; + +public class EnvFactory { + + public static Env createEnv(boolean isCheckpointCatalog) { + return new Env(isCheckpointCatalog); + } + + public static InternalCatalog createInternalCatalog() { + return new InternalCatalog(); + } + + public static Partition createPartition() { + return new Partition(); + } + + public static Replica createReplica() { + return new Replica(); + } +} diff --git a/fe/fe-core/src/main/java/org/apache/doris/catalog/Partition.java b/fe/fe-core/src/main/java/org/apache/doris/catalog/Partition.java index 76c3097a033..b148fca310e 100644 --- a/fe/fe-core/src/main/java/org/apache/doris/catalog/Partition.java +++ b/fe/fe-core/src/main/java/org/apache/doris/catalog/Partition.java @@ -102,7 +102,7 @@ public class Partition extends MetaObject implements Writable { @SerializedName(value = "distributionInfo") private DistributionInfo distributionInfo; - private Partition() { + protected Partition() { } public Partition(long id, String name, @@ -331,7 +331,7 @@ public class Partition extends MetaObject implements Writable { } public static Partition read(DataInput in) throws IOException { - Partition partition = new Partition(); + Partition partition = EnvFactory.createPartition(); partition.readFields(in); return partition; } diff --git a/fe/fe-core/src/main/java/org/apache/doris/catalog/Replica.java b/fe/fe-core/src/main/java/org/apache/doris/catalog/Replica.java index 0dad3612023..5f7dfc07eeb 100644 --- a/fe/fe-core/src/main/java/org/apache/doris/catalog/Replica.java +++ b/fe/fe-core/src/main/java/org/apache/doris/catalog/Replica.java @@ -678,7 +678,7 @@ public class Replica implements Writable { } public static Replica read(DataInput in) throws IOException { - Replica replica = new Replica(); + Replica replica = EnvFactory.createReplica(); replica.readFields(in); return replica; } diff --git a/fe/fe-core/src/main/java/org/apache/doris/datasource/CatalogMgr.java b/fe/fe-core/src/main/java/org/apache/doris/datasource/CatalogMgr.java index 41631dc82aa..da6261252b3 100644 --- a/fe/fe-core/src/main/java/org/apache/doris/datasource/CatalogMgr.java +++ b/fe/fe-core/src/main/java/org/apache/doris/datasource/CatalogMgr.java @@ -27,6 +27,7 @@ import org.apache.doris.analysis.ShowCatalogStmt; import org.apache.doris.analysis.ShowCreateCatalogStmt; import org.apache.doris.catalog.DatabaseIf; import org.apache.doris.catalog.Env; +import org.apache.doris.catalog.EnvFactory; import org.apache.doris.catalog.Resource; import org.apache.doris.catalog.Resource.ReferenceType; import org.apache.doris.catalog.TableIf; @@ -114,7 +115,7 @@ public class CatalogMgr implements Writable, GsonPostProcessable { } private void initInternalCatalog() { - internalCatalog = new InternalCatalog(); + internalCatalog = EnvFactory.createInternalCatalog(); addCatalog(internalCatalog); } diff --git a/fe/fe-core/src/test/java/org/apache/doris/binlog/BinlogManagerTest.java b/fe/fe-core/src/test/java/org/apache/doris/binlog/BinlogManagerTest.java index dabd8bfc1e4..03f8d325d77 100644 --- a/fe/fe-core/src/test/java/org/apache/doris/binlog/BinlogManagerTest.java +++ b/fe/fe-core/src/test/java/org/apache/doris/binlog/BinlogManagerTest.java @@ -20,6 +20,7 @@ package org.apache.doris.binlog; import org.apache.doris.catalog.BinlogConfig; import org.apache.doris.catalog.Database; import org.apache.doris.catalog.Env; +import org.apache.doris.catalog.EnvFactory; import org.apache.doris.common.Config; import org.apache.doris.common.Pair; import org.apache.doris.datasource.InternalCatalog; @@ -118,7 +119,7 @@ public class BinlogManagerTest { new MockUp<Env>() { @Mock public InternalCatalog getCurrentInternalCatalog() { - return new InternalCatalog(); + return EnvFactory.createInternalCatalog(); } }; diff --git a/fe/fe-core/src/test/java/org/apache/doris/statistics/StatisticsAutoCollectorTest.java b/fe/fe-core/src/test/java/org/apache/doris/statistics/StatisticsAutoCollectorTest.java index 466db9088e4..f82a6541d89 100644 --- a/fe/fe-core/src/test/java/org/apache/doris/statistics/StatisticsAutoCollectorTest.java +++ b/fe/fe-core/src/test/java/org/apache/doris/statistics/StatisticsAutoCollectorTest.java @@ -21,6 +21,7 @@ import org.apache.doris.catalog.Column; import org.apache.doris.catalog.Database; import org.apache.doris.catalog.DatabaseIf; import org.apache.doris.catalog.Env; +import org.apache.doris.catalog.EnvFactory; import org.apache.doris.catalog.OlapTable; import org.apache.doris.catalog.PrimitiveType; import org.apache.doris.catalog.Table; @@ -489,7 +490,7 @@ public class StatisticsAutoCollectorTest { @Test public void testDisableAuto1() throws Exception { - InternalCatalog catalog1 = new InternalCatalog(); + InternalCatalog catalog1 = EnvFactory.createInternalCatalog(); List<CatalogIf> catalogs = Lists.newArrayList(); catalogs.add(catalog1); @@ -517,7 +518,7 @@ public class StatisticsAutoCollectorTest { @Test public void testDisableAuto2() throws Exception { - InternalCatalog catalog1 = new InternalCatalog(); + InternalCatalog catalog1 = EnvFactory.createInternalCatalog(); List<CatalogIf> catalogs = Lists.newArrayList(); catalogs.add(catalog1); --------------------------------------------------------------------- To unsubscribe, e-mail: commits-unsubscr...@doris.apache.org For additional commands, e-mail: commits-h...@doris.apache.org