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

chengzhang pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/shardingsphere.git


The following commit(s) were added to refs/heads/master by this push:
     new 67809df8424 Remove useless sql federation config in e2e sql and 
refactor sql federation check logic (#36384)
67809df8424 is described below

commit 67809df84240d4cee80884c811071a4543279b1e
Author: Zhengqiang Duan <[email protected]>
AuthorDate: Sat Aug 23 08:07:30 2025 +0800

    Remove useless sql federation config in e2e sql and refactor sql federation 
check logic (#36384)
    
    * Remove useless sql federation config in e2e sql and refactor sql 
federation check logic
    
    * remove useless e2e case
---
 .../compiler/SQLStatementCompilerEngine.java       | 14 +++++++++
 .../SQLStatementCompilerEngineFactory.java         | 10 +++++++
 .../InvalidExecutionPlanCacheConfigException.java  | 32 ++++++++++++++++++++
 .../sqlfederation/rule/SQLFederationRule.java      | 14 +++++++--
 .../engine/SQLFederationEngineTest.java            | 14 ++++-----
 .../update/AlterSQLFederationRuleExecutor.java     | 12 +++++++-
 .../mysql/preview_federation_select.xml            | 34 ----------------------
 .../opengauss/preview_federation_select.xml        | 34 ----------------------
 .../postgresql/preview_federation_select.xml       | 34 ----------------------
 .../test/resources/cases/ral/e2e-ral-preview.xml   |  4 ---
 .../env/scenario/db/proxy/mode/cluster/global.yaml |  6 ----
 .../scenario/db/proxy/mode/standalone/global.yaml  |  6 ----
 .../proxy/mode/cluster/global.yaml                 |  6 ----
 .../proxy/mode/standalone/global.yaml              |  6 ----
 .../dbtbl_with_readwrite_splitting/rules.yaml      |  6 ----
 .../proxy/mode/cluster/global.yaml                 |  6 ----
 .../proxy/mode/standalone/global.yaml              |  6 ----
 .../rules.yaml                                     |  6 ----
 .../empty_rules/proxy/mode/cluster/global.yaml     |  6 ----
 .../empty_rules/proxy/mode/standalone/global.yaml  |  6 ----
 .../proxy/mode/cluster/global.yaml                 |  6 ----
 .../proxy/mode/cluster/mysql/global.yaml           |  6 ----
 .../proxy/mode/cluster/opengauss/global.yaml       |  6 ----
 .../proxy/mode/cluster/postgresql/global.yaml      |  6 ----
 .../proxy/mode/standalone/global.yaml              |  6 ----
 .../proxy/mode/standalone/mysql/global.yaml        |  6 ----
 .../proxy/mode/standalone/opengauss/global.yaml    |  6 ----
 .../proxy/mode/standalone/postgresql/global.yaml   |  6 ----
 .../proxy/mode/cluster/global.yaml                 |  6 ----
 .../proxy/mode/standalone/global.yaml              |  6 ----
 .../scenario/tbl/proxy/mode/cluster/global.yaml    |  6 ----
 .../scenario/tbl/proxy/mode/standalone/global.yaml |  6 ----
 32 files changed, 86 insertions(+), 248 deletions(-)

diff --git 
a/kernel/sql-federation/compiler/src/main/java/org/apache/shardingsphere/sqlfederation/compiler/compiler/SQLStatementCompilerEngine.java
 
b/kernel/sql-federation/compiler/src/main/java/org/apache/shardingsphere/sqlfederation/compiler/compiler/SQLStatementCompilerEngine.java
index cdf57ecee4c..11bfda6b8a4 100644
--- 
a/kernel/sql-federation/compiler/src/main/java/org/apache/shardingsphere/sqlfederation/compiler/compiler/SQLStatementCompilerEngine.java
+++ 
b/kernel/sql-federation/compiler/src/main/java/org/apache/shardingsphere/sqlfederation/compiler/compiler/SQLStatementCompilerEngine.java
@@ -18,6 +18,7 @@
 package org.apache.shardingsphere.sqlfederation.compiler.compiler;
 
 import com.github.benmanes.caffeine.cache.LoadingCache;
+import lombok.Getter;
 import lombok.extern.slf4j.Slf4j;
 import 
org.apache.shardingsphere.sqlfederation.compiler.SQLFederationExecutionPlan;
 import 
org.apache.shardingsphere.sqlfederation.compiler.planner.cache.ExecutionPlanCacheBuilder;
@@ -32,8 +33,12 @@ public final class SQLStatementCompilerEngine {
     
     private final LoadingCache<ExecutionPlanCacheKey, 
SQLFederationExecutionPlan> executionPlanCache;
     
+    @Getter
+    private final SQLFederationCacheOption cacheOption;
+    
     public SQLStatementCompilerEngine(final SQLFederationCacheOption 
cacheOption) {
         executionPlanCache = ExecutionPlanCacheBuilder.build(cacheOption);
+        this.cacheOption = cacheOption;
     }
     
     /**
@@ -50,4 +55,13 @@ public final class SQLStatementCompilerEngine {
         }
         return useCache ? executionPlanCache.get(cacheKey) : 
cacheKey.getSqlStatementCompiler().compile(cacheKey.getSqlStatement(), 
cacheKey.getSqlStatement().getDatabaseType().getType());
     }
+    
+    /**
+     * Update cache option.
+     *
+     * @param cacheOption cache option
+     */
+    public void updateCacheOption(final SQLFederationCacheOption cacheOption) {
+        executionPlanCache.policy().eviction().ifPresent(optional -> 
optional.setMaximum(cacheOption.getMaximumSize()));
+    }
 }
diff --git 
a/kernel/sql-federation/compiler/src/main/java/org/apache/shardingsphere/sqlfederation/compiler/compiler/SQLStatementCompilerEngineFactory.java
 
b/kernel/sql-federation/compiler/src/main/java/org/apache/shardingsphere/sqlfederation/compiler/compiler/SQLStatementCompilerEngineFactory.java
index d920690d8be..cd2ee4d27ea 100644
--- 
a/kernel/sql-federation/compiler/src/main/java/org/apache/shardingsphere/sqlfederation/compiler/compiler/SQLStatementCompilerEngineFactory.java
+++ 
b/kernel/sql-federation/compiler/src/main/java/org/apache/shardingsphere/sqlfederation/compiler/compiler/SQLStatementCompilerEngineFactory.java
@@ -45,7 +45,17 @@ public final class SQLStatementCompilerEngineFactory {
         SQLStatementCompilerEngine result = COMPILER_ENGINES.get(cacheKey);
         if (null == result) {
             result = COMPILER_ENGINES.computeIfAbsent(cacheKey, unused -> new 
SQLStatementCompilerEngine(cacheOption));
+        } else if (isOnlyModifyMaximumSizeConfig(cacheOption, result)) {
+            result.updateCacheOption(cacheOption);
+        } else if (!cacheOption.equals(result.getCacheOption())) {
+            result = new SQLStatementCompilerEngine(cacheOption);
+            COMPILER_ENGINES.put(cacheKey, result);
         }
         return result;
     }
+    
+    private static boolean isOnlyModifyMaximumSizeConfig(final 
SQLFederationCacheOption cacheOption, final SQLStatementCompilerEngine 
compilerEngine) {
+        return cacheOption.getInitialCapacity() == 
compilerEngine.getCacheOption().getInitialCapacity()
+                && cacheOption.getMaximumSize() != 
compilerEngine.getCacheOption().getMaximumSize();
+    }
 }
diff --git 
a/kernel/sql-federation/compiler/src/main/java/org/apache/shardingsphere/sqlfederation/compiler/exception/InvalidExecutionPlanCacheConfigException.java
 
b/kernel/sql-federation/compiler/src/main/java/org/apache/shardingsphere/sqlfederation/compiler/exception/InvalidExecutionPlanCacheConfigException.java
new file mode 100644
index 00000000000..d98ef587935
--- /dev/null
+++ 
b/kernel/sql-federation/compiler/src/main/java/org/apache/shardingsphere/sqlfederation/compiler/exception/InvalidExecutionPlanCacheConfigException.java
@@ -0,0 +1,32 @@
+/*
+ * 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.shardingsphere.sqlfederation.compiler.exception;
+
+import 
org.apache.shardingsphere.infra.exception.core.external.sql.sqlstate.XOpenSQLState;
+
+/**
+ * Invalid execution plan cache config exception.
+ */
+public final class InvalidExecutionPlanCacheConfigException extends 
SQLFederationSQLException {
+    
+    private static final long serialVersionUID = -8736329434228094859L;
+    
+    public InvalidExecutionPlanCacheConfigException(final Object configKey, 
final Object configValue) {
+        super(XOpenSQLState.GENERAL_ERROR, 8, "Invalid execution plan cache 
config: `%s`=`%s`, the value must be positive.", configKey, configValue);
+    }
+}
diff --git 
a/kernel/sql-federation/core/src/main/java/org/apache/shardingsphere/sqlfederation/rule/SQLFederationRule.java
 
b/kernel/sql-federation/core/src/main/java/org/apache/shardingsphere/sqlfederation/rule/SQLFederationRule.java
index 12e840b6d15..2c651b36feb 100644
--- 
a/kernel/sql-federation/core/src/main/java/org/apache/shardingsphere/sqlfederation/rule/SQLFederationRule.java
+++ 
b/kernel/sql-federation/core/src/main/java/org/apache/shardingsphere/sqlfederation/rule/SQLFederationRule.java
@@ -18,12 +18,15 @@
 package org.apache.shardingsphere.sqlfederation.rule;
 
 import lombok.Getter;
+import 
org.apache.shardingsphere.infra.exception.core.ShardingSpherePreconditions;
 import 
org.apache.shardingsphere.infra.metadata.database.ShardingSphereDatabase;
 import org.apache.shardingsphere.infra.rule.scope.GlobalRule;
-import 
org.apache.shardingsphere.sqlfederation.config.SQLFederationRuleConfiguration;
-import org.apache.shardingsphere.sqlfederation.constant.SQLFederationOrder;
 import 
org.apache.shardingsphere.sqlfederation.compiler.context.CompilerContext;
 import 
org.apache.shardingsphere.sqlfederation.compiler.context.CompilerContextFactory;
+import 
org.apache.shardingsphere.sqlfederation.compiler.exception.InvalidExecutionPlanCacheConfigException;
+import org.apache.shardingsphere.sqlfederation.config.SQLFederationCacheOption;
+import 
org.apache.shardingsphere.sqlfederation.config.SQLFederationRuleConfiguration;
+import org.apache.shardingsphere.sqlfederation.constant.SQLFederationOrder;
 
 import java.util.Collection;
 import java.util.concurrent.atomic.AtomicReference;
@@ -41,6 +44,13 @@ public final class SQLFederationRule implements GlobalRule {
     public SQLFederationRule(final SQLFederationRuleConfiguration ruleConfig, 
final Collection<ShardingSphereDatabase> databases) {
         configuration = ruleConfig;
         compilerContext = new 
AtomicReference<>(CompilerContextFactory.create(databases));
+        checkExecutionPlanCacheConfig(ruleConfig.getExecutionPlanCache());
+    }
+    
+    private void checkExecutionPlanCacheConfig(final SQLFederationCacheOption 
executionPlanCache) {
+        
ShardingSpherePreconditions.checkState(executionPlanCache.getInitialCapacity() 
> 0,
+                () -> new 
InvalidExecutionPlanCacheConfigException("initialCapacity", 
executionPlanCache.getInitialCapacity()));
+        
ShardingSpherePreconditions.checkState(executionPlanCache.getMaximumSize() > 0, 
() -> new InvalidExecutionPlanCacheConfigException("maximumSize", 
executionPlanCache.getMaximumSize()));
     }
     
     @Override
diff --git 
a/kernel/sql-federation/core/src/test/java/org/apache/shardingsphere/sqlfederation/engine/SQLFederationEngineTest.java
 
b/kernel/sql-federation/core/src/test/java/org/apache/shardingsphere/sqlfederation/engine/SQLFederationEngineTest.java
index d9eea20245b..56b49c622f0 100644
--- 
a/kernel/sql-federation/core/src/test/java/org/apache/shardingsphere/sqlfederation/engine/SQLFederationEngineTest.java
+++ 
b/kernel/sql-federation/core/src/test/java/org/apache/shardingsphere/sqlfederation/engine/SQLFederationEngineTest.java
@@ -61,7 +61,7 @@ class SQLFederationEngineTest {
     @Test
     void assertDecideWhenSelectStatementContainsSystemSchema() throws 
SQLException {
         Collection<ShardingSphereRule> globalRules = Collections.singleton(
-                new SQLFederationRule(new 
SQLFederationRuleConfiguration(false, false, 
mock(SQLFederationCacheOption.class)), Collections.emptyList()));
+                new SQLFederationRule(new 
SQLFederationRuleConfiguration(false, false, new SQLFederationCacheOption(1, 
1)), Collections.emptyList()));
         SelectStatementContext sqlStatementContext = 
mock(SelectStatementContext.class, RETURNS_DEEP_STUBS);
         
when(sqlStatementContext.getSqlStatement().getDatabaseType()).thenReturn(databaseType);
         
when(sqlStatementContext.getTablesContext().getDatabaseNames()).thenReturn(Collections.singletonList("information_schema"));
@@ -85,7 +85,7 @@ class SQLFederationEngineTest {
     void assertDecideWhenNotConfigSqlFederationEnabled() throws SQLException {
         Collection<ShardingSphereRule> globalRules =
                 Collections
-                        .singletonList(new SQLFederationRule(new 
SQLFederationRuleConfiguration(false, false, 
mock(SQLFederationCacheOption.class)), Collections.emptyList()));
+                        .singletonList(new SQLFederationRule(new 
SQLFederationRuleConfiguration(false, false, new SQLFederationCacheOption(1, 
1)), Collections.emptyList()));
         SQLFederationEngine engine = createSQLFederationEngine(globalRules, 
Collections.emptyList());
         RuleMetaData globalRuleMetaData = new RuleMetaData(globalRules);
         assertFalse(engine.decide(mock(QueryContext.class), 
globalRuleMetaData));
@@ -95,7 +95,7 @@ class SQLFederationEngineTest {
     @Test
     void assertDecideWhenConfigAllQueryUseSQLFederation() throws SQLException {
         Collection<ShardingSphereRule> globalRules =
-                Collections.singletonList(new SQLFederationRule(new 
SQLFederationRuleConfiguration(true, true, 
mock(SQLFederationCacheOption.class)), Collections.emptyList()));
+                Collections.singletonList(new SQLFederationRule(new 
SQLFederationRuleConfiguration(true, true, new SQLFederationCacheOption(1, 1)), 
Collections.emptyList()));
         ShardingSphereDatabase database = new ShardingSphereDatabase("foo_db",
                 databaseType, mock(ResourceMetaData.class, 
RETURNS_DEEP_STUBS), new RuleMetaData(globalRules), Collections.emptyList());
         SelectStatementContext selectStatementContext = 
mock(SelectStatementContext.class, RETURNS_DEEP_STUBS);
@@ -113,7 +113,7 @@ class SQLFederationEngineTest {
     @Test
     void assertDecideWhenExecuteNotSelectStatement() throws SQLException {
         Collection<ShardingSphereRule> globalRules =
-                Collections.singletonList(new SQLFederationRule(new 
SQLFederationRuleConfiguration(true, false, 
mock(SQLFederationCacheOption.class)), Collections.emptyList()));
+                Collections.singletonList(new SQLFederationRule(new 
SQLFederationRuleConfiguration(true, false, new SQLFederationCacheOption(1, 
1)), Collections.emptyList()));
         SQLFederationEngine engine = createSQLFederationEngine(globalRules, 
Collections.emptyList());
         RuleMetaData globalRuleMetaData = new RuleMetaData(globalRules);
         assertFalse(engine.decide(mock(QueryContext.class), 
globalRuleMetaData));
@@ -123,7 +123,7 @@ class SQLFederationEngineTest {
     @Test
     void assertDecideWhenConfigSingleMatchedRule() throws SQLException {
         Collection<ShardingSphereRule> globalRules =
-                Collections.singletonList(new SQLFederationRule(new 
SQLFederationRuleConfiguration(true, false, 
mock(SQLFederationCacheOption.class)), Collections.emptyList()));
+                Collections.singletonList(new SQLFederationRule(new 
SQLFederationRuleConfiguration(true, false, new SQLFederationCacheOption(1, 
1)), Collections.emptyList()));
         Collection<ShardingSphereRule> databaseRules = 
Collections.singletonList(new SQLFederationDeciderRuleMatchFixture());
         ShardingSphereDatabase database = new ShardingSphereDatabase("foo_db",
                 databaseType, mock(ResourceMetaData.class, 
RETURNS_DEEP_STUBS), new RuleMetaData(globalRules), Collections.emptyList());
@@ -142,7 +142,7 @@ class SQLFederationEngineTest {
     @Test
     void assertDecideWhenConfigSingleNotMatchedRule() throws SQLException {
         Collection<ShardingSphereRule> globalRules =
-                Collections.singletonList(new SQLFederationRule(new 
SQLFederationRuleConfiguration(true, false, 
mock(SQLFederationCacheOption.class)), Collections.emptyList()));
+                Collections.singletonList(new SQLFederationRule(new 
SQLFederationRuleConfiguration(true, false, new SQLFederationCacheOption(1, 
1)), Collections.emptyList()));
         Collection<ShardingSphereRule> databaseRules = 
Collections.singletonList(new SQLFederationDeciderRuleNotMatchFixture());
         ShardingSphereDatabase database = new ShardingSphereDatabase("foo_db",
                 databaseType, mock(ResourceMetaData.class, 
RETURNS_DEEP_STUBS), new RuleMetaData(databaseRules), Collections.emptyList());
@@ -160,7 +160,7 @@ class SQLFederationEngineTest {
     @Test
     void assertDecideWhenConfigMultiRule() throws SQLException {
         Collection<ShardingSphereRule> globalRules =
-                Collections.singletonList(new SQLFederationRule(new 
SQLFederationRuleConfiguration(true, false, 
mock(SQLFederationCacheOption.class)), Collections.emptyList()));
+                Collections.singletonList(new SQLFederationRule(new 
SQLFederationRuleConfiguration(true, false, new SQLFederationCacheOption(1, 
1)), Collections.emptyList()));
         Collection<ShardingSphereRule> databaseRules = Arrays.asList(new 
SQLFederationDeciderRuleNotMatchFixture(),
                 new SQLFederationDeciderRuleMatchFixture());
         ShardingSphereDatabase database = new ShardingSphereDatabase("foo_db",
diff --git 
a/kernel/sql-federation/distsql/handler/src/main/java/org/apache/shardingsphere/sqlfederation/distsql/handler/update/AlterSQLFederationRuleExecutor.java
 
b/kernel/sql-federation/distsql/handler/src/main/java/org/apache/shardingsphere/sqlfederation/distsql/handler/update/AlterSQLFederationRuleExecutor.java
index ab27ffbed27..d6619f1061a 100644
--- 
a/kernel/sql-federation/distsql/handler/src/main/java/org/apache/shardingsphere/sqlfederation/distsql/handler/update/AlterSQLFederationRuleExecutor.java
+++ 
b/kernel/sql-federation/distsql/handler/src/main/java/org/apache/shardingsphere/sqlfederation/distsql/handler/update/AlterSQLFederationRuleExecutor.java
@@ -19,6 +19,8 @@ package 
org.apache.shardingsphere.sqlfederation.distsql.handler.update;
 
 import lombok.Setter;
 import 
org.apache.shardingsphere.distsql.handler.engine.update.rdl.rule.spi.global.GlobalRuleDefinitionExecutor;
+import 
org.apache.shardingsphere.infra.exception.core.ShardingSpherePreconditions;
+import 
org.apache.shardingsphere.sqlfederation.compiler.exception.InvalidExecutionPlanCacheConfigException;
 import org.apache.shardingsphere.sqlfederation.config.SQLFederationCacheOption;
 import 
org.apache.shardingsphere.sqlfederation.config.SQLFederationRuleConfiguration;
 import 
org.apache.shardingsphere.sqlfederation.distsql.segment.CacheOptionSegment;
@@ -46,7 +48,15 @@ public final class AlterSQLFederationRuleExecutor implements 
GlobalRuleDefinitio
     private SQLFederationCacheOption createCacheOption(final 
SQLFederationCacheOption cacheOption, final CacheOptionSegment segment) {
         int initialCapacity = null == segment.getInitialCapacity() ? 
cacheOption.getInitialCapacity() : segment.getInitialCapacity();
         long maximumSize = null == segment.getMaximumSize() ? 
cacheOption.getMaximumSize() : segment.getMaximumSize();
-        return new SQLFederationCacheOption(initialCapacity, maximumSize);
+        SQLFederationCacheOption result = new 
SQLFederationCacheOption(initialCapacity, maximumSize);
+        checkExecutionPlanCacheConfig(result);
+        return result;
+    }
+    
+    private void checkExecutionPlanCacheConfig(final SQLFederationCacheOption 
executionPlanCache) {
+        
ShardingSpherePreconditions.checkState(executionPlanCache.getInitialCapacity() 
> 0,
+                () -> new 
InvalidExecutionPlanCacheConfigException("initialCapacity", 
executionPlanCache.getInitialCapacity()));
+        
ShardingSpherePreconditions.checkState(executionPlanCache.getMaximumSize() > 0, 
() -> new InvalidExecutionPlanCacheConfigException("maximumSize", 
executionPlanCache.getMaximumSize()));
     }
     
     @Override
diff --git 
a/test/e2e/sql/src/test/resources/cases/ral/dataset/empty_rules/mysql/preview_federation_select.xml
 
b/test/e2e/sql/src/test/resources/cases/ral/dataset/empty_rules/mysql/preview_federation_select.xml
deleted file mode 100644
index df2c216d6b7..00000000000
--- 
a/test/e2e/sql/src/test/resources/cases/ral/dataset/empty_rules/mysql/preview_federation_select.xml
+++ /dev/null
@@ -1,34 +0,0 @@
-<!--
-  ~ 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.
-  -->
-
-<dataset>
-    <metadata>
-        <column name="data_source_name" />
-        <column name="actual_sql" />
-    </metadata>
-    <row values="read_ds_0| SELECT * FROM `t_single_table`" />
-    <row values="write_ds_0| SELECT * FROM `t_user_item_0` WHERE 
CAST(`user_id` AS SIGNED) = 1 UNION ALL SELECT * FROM `t_user_item_10` WHERE 
CAST(`user_id` AS SIGNED) = 1 UNION ALL SELECT * FROM `t_user_item_20` WHERE 
CAST(`user_id` AS SIGNED) = 1 UNION ALL SELECT * FROM `t_user_item_30` WHERE 
CAST(`user_id` AS SIGNED) = 1" />
-    <row values="write_ds_1| SELECT * FROM `t_user_item_1` WHERE 
CAST(`user_id` AS SIGNED) = 1 UNION ALL SELECT * FROM `t_user_item_11` WHERE 
CAST(`user_id` AS SIGNED) = 1 UNION ALL SELECT * FROM `t_user_item_21` WHERE 
CAST(`user_id` AS SIGNED) = 1 UNION ALL SELECT * FROM `t_user_item_31` WHERE 
CAST(`user_id` AS SIGNED) = 1" />
-    <row values="write_ds_2| SELECT * FROM `t_user_item_2` WHERE 
CAST(`user_id` AS SIGNED) = 1 UNION ALL SELECT * FROM `t_user_item_12` WHERE 
CAST(`user_id` AS SIGNED) = 1 UNION ALL SELECT * FROM `t_user_item_22` WHERE 
CAST(`user_id` AS SIGNED) = 1 UNION ALL SELECT * FROM `t_user_item_32` WHERE 
CAST(`user_id` AS SIGNED) = 1" />
-    <row values="write_ds_3| SELECT * FROM `t_user_item_3` WHERE 
CAST(`user_id` AS SIGNED) = 1 UNION ALL SELECT * FROM `t_user_item_13` WHERE 
CAST(`user_id` AS SIGNED) = 1 UNION ALL SELECT * FROM `t_user_item_23` WHERE 
CAST(`user_id` AS SIGNED) = 1 UNION ALL SELECT * FROM `t_user_item_33` WHERE 
CAST(`user_id` AS SIGNED) = 1" />
-    <row values="write_ds_4| SELECT * FROM `t_user_item_4` WHERE 
CAST(`user_id` AS SIGNED) = 1 UNION ALL SELECT * FROM `t_user_item_14` WHERE 
CAST(`user_id` AS SIGNED) = 1 UNION ALL SELECT * FROM `t_user_item_24` WHERE 
CAST(`user_id` AS SIGNED) = 1 UNION ALL SELECT * FROM `t_user_item_34` WHERE 
CAST(`user_id` AS SIGNED) = 1" />
-    <row values="write_ds_5| SELECT * FROM `t_user_item_5` WHERE 
CAST(`user_id` AS SIGNED) = 1 UNION ALL SELECT * FROM `t_user_item_15` WHERE 
CAST(`user_id` AS SIGNED) = 1 UNION ALL SELECT * FROM `t_user_item_25` WHERE 
CAST(`user_id` AS SIGNED) = 1 UNION ALL SELECT * FROM `t_user_item_35` WHERE 
CAST(`user_id` AS SIGNED) = 1" />
-    <row values="write_ds_6| SELECT * FROM `t_user_item_6` WHERE 
CAST(`user_id` AS SIGNED) = 1 UNION ALL SELECT * FROM `t_user_item_16` WHERE 
CAST(`user_id` AS SIGNED) = 1 UNION ALL SELECT * FROM `t_user_item_26` WHERE 
CAST(`user_id` AS SIGNED) = 1 UNION ALL SELECT * FROM `t_user_item_36` WHERE 
CAST(`user_id` AS SIGNED) = 1" />
-    <row values="write_ds_7| SELECT * FROM `t_user_item_7` WHERE 
CAST(`user_id` AS SIGNED) = 1 UNION ALL SELECT * FROM `t_user_item_17` WHERE 
CAST(`user_id` AS SIGNED) = 1 UNION ALL SELECT * FROM `t_user_item_27` WHERE 
CAST(`user_id` AS SIGNED) = 1 UNION ALL SELECT * FROM `t_user_item_37` WHERE 
CAST(`user_id` AS SIGNED) = 1" />
-    <row values="write_ds_8| SELECT * FROM `t_user_item_8` WHERE 
CAST(`user_id` AS SIGNED) = 1 UNION ALL SELECT * FROM `t_user_item_18` WHERE 
CAST(`user_id` AS SIGNED) = 1 UNION ALL SELECT * FROM `t_user_item_28` WHERE 
CAST(`user_id` AS SIGNED) = 1 UNION ALL SELECT * FROM `t_user_item_38` WHERE 
CAST(`user_id` AS SIGNED) = 1" />
-    <row values="write_ds_9| SELECT * FROM `t_user_item_9` WHERE 
CAST(`user_id` AS SIGNED) = 1 UNION ALL SELECT * FROM `t_user_item_19` WHERE 
CAST(`user_id` AS SIGNED) = 1 UNION ALL SELECT * FROM `t_user_item_29` WHERE 
CAST(`user_id` AS SIGNED) = 1 UNION ALL SELECT * FROM `t_user_item_39` WHERE 
CAST(`user_id` AS SIGNED) = 1" />
-</dataset>
diff --git 
a/test/e2e/sql/src/test/resources/cases/ral/dataset/empty_rules/opengauss/preview_federation_select.xml
 
b/test/e2e/sql/src/test/resources/cases/ral/dataset/empty_rules/opengauss/preview_federation_select.xml
deleted file mode 100644
index 06f3c1f7eeb..00000000000
--- 
a/test/e2e/sql/src/test/resources/cases/ral/dataset/empty_rules/opengauss/preview_federation_select.xml
+++ /dev/null
@@ -1,34 +0,0 @@
-<!--
-  ~ 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.
-  -->
-
-<dataset>
-    <metadata>
-        <column name="data_source_name" />
-        <column name="actual_sql" />
-    </metadata>
-    <row values="read_ds_0| SELECT * FROM 
&quot;public&quot;.&quot;t_single_table&quot;" />
-    <row values="write_ds_0| SELECT * FROM 
&quot;public&quot;.&quot;t_user_item_0&quot; WHERE CAST(&quot;user_id&quot; AS 
INTEGER) = 1 UNION ALL SELECT * FROM 
&quot;public&quot;.&quot;t_user_item_10&quot; WHERE CAST(&quot;user_id&quot; AS 
INTEGER) = 1 UNION ALL SELECT * FROM 
&quot;public&quot;.&quot;t_user_item_20&quot; WHERE CAST(&quot;user_id&quot; AS 
INTEGER) = 1 UNION ALL SELECT * FROM 
&quot;public&quot;.&quot;t_user_item_30&quot; WHERE CAST(&quot;user_id&quot; AS 
INTEGER) = 1" />
-    <row values="write_ds_1| SELECT * FROM 
&quot;public&quot;.&quot;t_user_item_1&quot; WHERE CAST(&quot;user_id&quot; AS 
INTEGER) = 1 UNION ALL SELECT * FROM 
&quot;public&quot;.&quot;t_user_item_11&quot; WHERE CAST(&quot;user_id&quot; AS 
INTEGER) = 1 UNION ALL SELECT * FROM 
&quot;public&quot;.&quot;t_user_item_21&quot; WHERE CAST(&quot;user_id&quot; AS 
INTEGER) = 1 UNION ALL SELECT * FROM 
&quot;public&quot;.&quot;t_user_item_31&quot; WHERE CAST(&quot;user_id&quot; AS 
INTEGER) = 1" />
-    <row values="write_ds_2| SELECT * FROM 
&quot;public&quot;.&quot;t_user_item_2&quot; WHERE CAST(&quot;user_id&quot; AS 
INTEGER) = 1 UNION ALL SELECT * FROM 
&quot;public&quot;.&quot;t_user_item_12&quot; WHERE CAST(&quot;user_id&quot; AS 
INTEGER) = 1 UNION ALL SELECT * FROM 
&quot;public&quot;.&quot;t_user_item_22&quot; WHERE CAST(&quot;user_id&quot; AS 
INTEGER) = 1 UNION ALL SELECT * FROM 
&quot;public&quot;.&quot;t_user_item_32&quot; WHERE CAST(&quot;user_id&quot; AS 
INTEGER) = 1" />
-    <row values="write_ds_3| SELECT * FROM 
&quot;public&quot;.&quot;t_user_item_3&quot; WHERE CAST(&quot;user_id&quot; AS 
INTEGER) = 1 UNION ALL SELECT * FROM 
&quot;public&quot;.&quot;t_user_item_13&quot; WHERE CAST(&quot;user_id&quot; AS 
INTEGER) = 1 UNION ALL SELECT * FROM 
&quot;public&quot;.&quot;t_user_item_23&quot; WHERE CAST(&quot;user_id&quot; AS 
INTEGER) = 1 UNION ALL SELECT * FROM 
&quot;public&quot;.&quot;t_user_item_33&quot; WHERE CAST(&quot;user_id&quot; AS 
INTEGER) = 1" />
-    <row values="write_ds_4| SELECT * FROM 
&quot;public&quot;.&quot;t_user_item_4&quot; WHERE CAST(&quot;user_id&quot; AS 
INTEGER) = 1 UNION ALL SELECT * FROM 
&quot;public&quot;.&quot;t_user_item_14&quot; WHERE CAST(&quot;user_id&quot; AS 
INTEGER) = 1 UNION ALL SELECT * FROM 
&quot;public&quot;.&quot;t_user_item_24&quot; WHERE CAST(&quot;user_id&quot; AS 
INTEGER) = 1 UNION ALL SELECT * FROM 
&quot;public&quot;.&quot;t_user_item_34&quot; WHERE CAST(&quot;user_id&quot; AS 
INTEGER) = 1" />
-    <row values="write_ds_5| SELECT * FROM 
&quot;public&quot;.&quot;t_user_item_5&quot; WHERE CAST(&quot;user_id&quot; AS 
INTEGER) = 1 UNION ALL SELECT * FROM 
&quot;public&quot;.&quot;t_user_item_15&quot; WHERE CAST(&quot;user_id&quot; AS 
INTEGER) = 1 UNION ALL SELECT * FROM 
&quot;public&quot;.&quot;t_user_item_25&quot; WHERE CAST(&quot;user_id&quot; AS 
INTEGER) = 1 UNION ALL SELECT * FROM 
&quot;public&quot;.&quot;t_user_item_35&quot; WHERE CAST(&quot;user_id&quot; AS 
INTEGER) = 1" />
-    <row values="write_ds_6| SELECT * FROM 
&quot;public&quot;.&quot;t_user_item_6&quot; WHERE CAST(&quot;user_id&quot; AS 
INTEGER) = 1 UNION ALL SELECT * FROM 
&quot;public&quot;.&quot;t_user_item_16&quot; WHERE CAST(&quot;user_id&quot; AS 
INTEGER) = 1 UNION ALL SELECT * FROM 
&quot;public&quot;.&quot;t_user_item_26&quot; WHERE CAST(&quot;user_id&quot; AS 
INTEGER) = 1 UNION ALL SELECT * FROM 
&quot;public&quot;.&quot;t_user_item_36&quot; WHERE CAST(&quot;user_id&quot; AS 
INTEGER) = 1" />
-    <row values="write_ds_7| SELECT * FROM 
&quot;public&quot;.&quot;t_user_item_7&quot; WHERE CAST(&quot;user_id&quot; AS 
INTEGER) = 1 UNION ALL SELECT * FROM 
&quot;public&quot;.&quot;t_user_item_17&quot; WHERE CAST(&quot;user_id&quot; AS 
INTEGER) = 1 UNION ALL SELECT * FROM 
&quot;public&quot;.&quot;t_user_item_27&quot; WHERE CAST(&quot;user_id&quot; AS 
INTEGER) = 1 UNION ALL SELECT * FROM 
&quot;public&quot;.&quot;t_user_item_37&quot; WHERE CAST(&quot;user_id&quot; AS 
INTEGER) = 1" />
-    <row values="write_ds_8| SELECT * FROM 
&quot;public&quot;.&quot;t_user_item_8&quot; WHERE CAST(&quot;user_id&quot; AS 
INTEGER) = 1 UNION ALL SELECT * FROM 
&quot;public&quot;.&quot;t_user_item_18&quot; WHERE CAST(&quot;user_id&quot; AS 
INTEGER) = 1 UNION ALL SELECT * FROM 
&quot;public&quot;.&quot;t_user_item_28&quot; WHERE CAST(&quot;user_id&quot; AS 
INTEGER) = 1 UNION ALL SELECT * FROM 
&quot;public&quot;.&quot;t_user_item_38&quot; WHERE CAST(&quot;user_id&quot; AS 
INTEGER) = 1" />
-    <row values="write_ds_9| SELECT * FROM 
&quot;public&quot;.&quot;t_user_item_9&quot; WHERE CAST(&quot;user_id&quot; AS 
INTEGER) = 1 UNION ALL SELECT * FROM 
&quot;public&quot;.&quot;t_user_item_19&quot; WHERE CAST(&quot;user_id&quot; AS 
INTEGER) = 1 UNION ALL SELECT * FROM 
&quot;public&quot;.&quot;t_user_item_29&quot; WHERE CAST(&quot;user_id&quot; AS 
INTEGER) = 1 UNION ALL SELECT * FROM 
&quot;public&quot;.&quot;t_user_item_39&quot; WHERE CAST(&quot;user_id&quot; AS 
INTEGER) = 1" />
-</dataset>
diff --git 
a/test/e2e/sql/src/test/resources/cases/ral/dataset/empty_rules/postgresql/preview_federation_select.xml
 
b/test/e2e/sql/src/test/resources/cases/ral/dataset/empty_rules/postgresql/preview_federation_select.xml
deleted file mode 100644
index 06f3c1f7eeb..00000000000
--- 
a/test/e2e/sql/src/test/resources/cases/ral/dataset/empty_rules/postgresql/preview_federation_select.xml
+++ /dev/null
@@ -1,34 +0,0 @@
-<!--
-  ~ 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.
-  -->
-
-<dataset>
-    <metadata>
-        <column name="data_source_name" />
-        <column name="actual_sql" />
-    </metadata>
-    <row values="read_ds_0| SELECT * FROM 
&quot;public&quot;.&quot;t_single_table&quot;" />
-    <row values="write_ds_0| SELECT * FROM 
&quot;public&quot;.&quot;t_user_item_0&quot; WHERE CAST(&quot;user_id&quot; AS 
INTEGER) = 1 UNION ALL SELECT * FROM 
&quot;public&quot;.&quot;t_user_item_10&quot; WHERE CAST(&quot;user_id&quot; AS 
INTEGER) = 1 UNION ALL SELECT * FROM 
&quot;public&quot;.&quot;t_user_item_20&quot; WHERE CAST(&quot;user_id&quot; AS 
INTEGER) = 1 UNION ALL SELECT * FROM 
&quot;public&quot;.&quot;t_user_item_30&quot; WHERE CAST(&quot;user_id&quot; AS 
INTEGER) = 1" />
-    <row values="write_ds_1| SELECT * FROM 
&quot;public&quot;.&quot;t_user_item_1&quot; WHERE CAST(&quot;user_id&quot; AS 
INTEGER) = 1 UNION ALL SELECT * FROM 
&quot;public&quot;.&quot;t_user_item_11&quot; WHERE CAST(&quot;user_id&quot; AS 
INTEGER) = 1 UNION ALL SELECT * FROM 
&quot;public&quot;.&quot;t_user_item_21&quot; WHERE CAST(&quot;user_id&quot; AS 
INTEGER) = 1 UNION ALL SELECT * FROM 
&quot;public&quot;.&quot;t_user_item_31&quot; WHERE CAST(&quot;user_id&quot; AS 
INTEGER) = 1" />
-    <row values="write_ds_2| SELECT * FROM 
&quot;public&quot;.&quot;t_user_item_2&quot; WHERE CAST(&quot;user_id&quot; AS 
INTEGER) = 1 UNION ALL SELECT * FROM 
&quot;public&quot;.&quot;t_user_item_12&quot; WHERE CAST(&quot;user_id&quot; AS 
INTEGER) = 1 UNION ALL SELECT * FROM 
&quot;public&quot;.&quot;t_user_item_22&quot; WHERE CAST(&quot;user_id&quot; AS 
INTEGER) = 1 UNION ALL SELECT * FROM 
&quot;public&quot;.&quot;t_user_item_32&quot; WHERE CAST(&quot;user_id&quot; AS 
INTEGER) = 1" />
-    <row values="write_ds_3| SELECT * FROM 
&quot;public&quot;.&quot;t_user_item_3&quot; WHERE CAST(&quot;user_id&quot; AS 
INTEGER) = 1 UNION ALL SELECT * FROM 
&quot;public&quot;.&quot;t_user_item_13&quot; WHERE CAST(&quot;user_id&quot; AS 
INTEGER) = 1 UNION ALL SELECT * FROM 
&quot;public&quot;.&quot;t_user_item_23&quot; WHERE CAST(&quot;user_id&quot; AS 
INTEGER) = 1 UNION ALL SELECT * FROM 
&quot;public&quot;.&quot;t_user_item_33&quot; WHERE CAST(&quot;user_id&quot; AS 
INTEGER) = 1" />
-    <row values="write_ds_4| SELECT * FROM 
&quot;public&quot;.&quot;t_user_item_4&quot; WHERE CAST(&quot;user_id&quot; AS 
INTEGER) = 1 UNION ALL SELECT * FROM 
&quot;public&quot;.&quot;t_user_item_14&quot; WHERE CAST(&quot;user_id&quot; AS 
INTEGER) = 1 UNION ALL SELECT * FROM 
&quot;public&quot;.&quot;t_user_item_24&quot; WHERE CAST(&quot;user_id&quot; AS 
INTEGER) = 1 UNION ALL SELECT * FROM 
&quot;public&quot;.&quot;t_user_item_34&quot; WHERE CAST(&quot;user_id&quot; AS 
INTEGER) = 1" />
-    <row values="write_ds_5| SELECT * FROM 
&quot;public&quot;.&quot;t_user_item_5&quot; WHERE CAST(&quot;user_id&quot; AS 
INTEGER) = 1 UNION ALL SELECT * FROM 
&quot;public&quot;.&quot;t_user_item_15&quot; WHERE CAST(&quot;user_id&quot; AS 
INTEGER) = 1 UNION ALL SELECT * FROM 
&quot;public&quot;.&quot;t_user_item_25&quot; WHERE CAST(&quot;user_id&quot; AS 
INTEGER) = 1 UNION ALL SELECT * FROM 
&quot;public&quot;.&quot;t_user_item_35&quot; WHERE CAST(&quot;user_id&quot; AS 
INTEGER) = 1" />
-    <row values="write_ds_6| SELECT * FROM 
&quot;public&quot;.&quot;t_user_item_6&quot; WHERE CAST(&quot;user_id&quot; AS 
INTEGER) = 1 UNION ALL SELECT * FROM 
&quot;public&quot;.&quot;t_user_item_16&quot; WHERE CAST(&quot;user_id&quot; AS 
INTEGER) = 1 UNION ALL SELECT * FROM 
&quot;public&quot;.&quot;t_user_item_26&quot; WHERE CAST(&quot;user_id&quot; AS 
INTEGER) = 1 UNION ALL SELECT * FROM 
&quot;public&quot;.&quot;t_user_item_36&quot; WHERE CAST(&quot;user_id&quot; AS 
INTEGER) = 1" />
-    <row values="write_ds_7| SELECT * FROM 
&quot;public&quot;.&quot;t_user_item_7&quot; WHERE CAST(&quot;user_id&quot; AS 
INTEGER) = 1 UNION ALL SELECT * FROM 
&quot;public&quot;.&quot;t_user_item_17&quot; WHERE CAST(&quot;user_id&quot; AS 
INTEGER) = 1 UNION ALL SELECT * FROM 
&quot;public&quot;.&quot;t_user_item_27&quot; WHERE CAST(&quot;user_id&quot; AS 
INTEGER) = 1 UNION ALL SELECT * FROM 
&quot;public&quot;.&quot;t_user_item_37&quot; WHERE CAST(&quot;user_id&quot; AS 
INTEGER) = 1" />
-    <row values="write_ds_8| SELECT * FROM 
&quot;public&quot;.&quot;t_user_item_8&quot; WHERE CAST(&quot;user_id&quot; AS 
INTEGER) = 1 UNION ALL SELECT * FROM 
&quot;public&quot;.&quot;t_user_item_18&quot; WHERE CAST(&quot;user_id&quot; AS 
INTEGER) = 1 UNION ALL SELECT * FROM 
&quot;public&quot;.&quot;t_user_item_28&quot; WHERE CAST(&quot;user_id&quot; AS 
INTEGER) = 1 UNION ALL SELECT * FROM 
&quot;public&quot;.&quot;t_user_item_38&quot; WHERE CAST(&quot;user_id&quot; AS 
INTEGER) = 1" />
-    <row values="write_ds_9| SELECT * FROM 
&quot;public&quot;.&quot;t_user_item_9&quot; WHERE CAST(&quot;user_id&quot; AS 
INTEGER) = 1 UNION ALL SELECT * FROM 
&quot;public&quot;.&quot;t_user_item_19&quot; WHERE CAST(&quot;user_id&quot; AS 
INTEGER) = 1 UNION ALL SELECT * FROM 
&quot;public&quot;.&quot;t_user_item_29&quot; WHERE CAST(&quot;user_id&quot; AS 
INTEGER) = 1 UNION ALL SELECT * FROM 
&quot;public&quot;.&quot;t_user_item_39&quot; WHERE CAST(&quot;user_id&quot; AS 
INTEGER) = 1" />
-</dataset>
diff --git a/test/e2e/sql/src/test/resources/cases/ral/e2e-ral-preview.xml 
b/test/e2e/sql/src/test/resources/cases/ral/e2e-ral-preview.xml
index c185166f7f6..85531144b24 100644
--- a/test/e2e/sql/src/test/resources/cases/ral/e2e-ral-preview.xml
+++ b/test/e2e/sql/src/test/resources/cases/ral/e2e-ral-preview.xml
@@ -21,10 +21,6 @@
         <assertion expected-data-file="preview_sql.xml" />
     </test-case>
     
-    <test-case sql="PREVIEW SELECT * FROM t_single_table s INNER JOIN 
t_user_item i ON s.single_id = i.item_id WHERE i.user_id = 1">
-        <assertion expected-data-file="preview_federation_select.xml" />
-    </test-case>
-    
     <test-case sql="PREVIEW /* SHARDINGSPHERE_HINT: DATA_SOURCE_NAME = 
write_ds_0, SKIP_SQL_REWRITE = true */ SELECT * FROM t_user_item">
         <assertion expected-data-file="preview_sql_hint.xml" />
     </test-case>
diff --git 
a/test/e2e/sql/src/test/resources/env/scenario/db/proxy/mode/cluster/global.yaml
 
b/test/e2e/sql/src/test/resources/env/scenario/db/proxy/mode/cluster/global.yaml
index e16b55b1962..db5ce2e1258 100644
--- 
a/test/e2e/sql/src/test/resources/env/scenario/db/proxy/mode/cluster/global.yaml
+++ 
b/test/e2e/sql/src/test/resources/env/scenario/db/proxy/mode/cluster/global.yaml
@@ -42,12 +42,6 @@ sqlParser:
   parseTreeCache:
     initialCapacity: 128
     maximumSize: 1024
-    
-sqlFederation:
-  sqlFederationEnabled: false
-  executionPlanCache:
-    initialCapacity: 2000
-    maximumSize: 65535
 
 props:
   max-connections-size-per-query: 1
diff --git 
a/test/e2e/sql/src/test/resources/env/scenario/db/proxy/mode/standalone/global.yaml
 
b/test/e2e/sql/src/test/resources/env/scenario/db/proxy/mode/standalone/global.yaml
index a54e1c47860..35dbce0ae4b 100644
--- 
a/test/e2e/sql/src/test/resources/env/scenario/db/proxy/mode/standalone/global.yaml
+++ 
b/test/e2e/sql/src/test/resources/env/scenario/db/proxy/mode/standalone/global.yaml
@@ -31,12 +31,6 @@ sqlParser:
     initialCapacity: 128
     maximumSize: 1024
 
-sqlFederation:
-  sqlFederationEnabled: false
-  executionPlanCache:
-    initialCapacity: 2000
-    maximumSize: 65535
-
 props:
   max-connections-size-per-query: 1
   kernel-executor-size: 16  # Infinite by default.
diff --git 
a/test/e2e/sql/src/test/resources/env/scenario/dbtbl_with_readwrite_splitting/proxy/mode/cluster/global.yaml
 
b/test/e2e/sql/src/test/resources/env/scenario/dbtbl_with_readwrite_splitting/proxy/mode/cluster/global.yaml
index c668a345957..34e9b99aca0 100644
--- 
a/test/e2e/sql/src/test/resources/env/scenario/dbtbl_with_readwrite_splitting/proxy/mode/cluster/global.yaml
+++ 
b/test/e2e/sql/src/test/resources/env/scenario/dbtbl_with_readwrite_splitting/proxy/mode/cluster/global.yaml
@@ -42,12 +42,6 @@ sqlParser:
   parseTreeCache:
     initialCapacity: 128
     maximumSize: 1024
-    
-sqlFederation:
-  sqlFederationEnabled: true
-  executionPlanCache:
-    initialCapacity: 2000
-    maximumSize: 65535
 
 props:
   max-connections-size-per-query: 1
diff --git 
a/test/e2e/sql/src/test/resources/env/scenario/dbtbl_with_readwrite_splitting/proxy/mode/standalone/global.yaml
 
b/test/e2e/sql/src/test/resources/env/scenario/dbtbl_with_readwrite_splitting/proxy/mode/standalone/global.yaml
index a28537f9714..35dbce0ae4b 100644
--- 
a/test/e2e/sql/src/test/resources/env/scenario/dbtbl_with_readwrite_splitting/proxy/mode/standalone/global.yaml
+++ 
b/test/e2e/sql/src/test/resources/env/scenario/dbtbl_with_readwrite_splitting/proxy/mode/standalone/global.yaml
@@ -31,12 +31,6 @@ sqlParser:
     initialCapacity: 128
     maximumSize: 1024
 
-sqlFederation:
-  sqlFederationEnabled: true
-  executionPlanCache:
-    initialCapacity: 2000
-    maximumSize: 65535
-
 props:
   max-connections-size-per-query: 1
   kernel-executor-size: 16  # Infinite by default.
diff --git 
a/test/e2e/sql/src/test/resources/env/scenario/dbtbl_with_readwrite_splitting/rules.yaml
 
b/test/e2e/sql/src/test/resources/env/scenario/dbtbl_with_readwrite_splitting/rules.yaml
index d0a0ecf8e72..f5453e3afb4 100644
--- 
a/test/e2e/sql/src/test/resources/env/scenario/dbtbl_with_readwrite_splitting/rules.yaml
+++ 
b/test/e2e/sql/src/test/resources/env/scenario/dbtbl_with_readwrite_splitting/rules.yaml
@@ -135,12 +135,6 @@ rules:
   loadBalancers:
     roundRobin:
       type: ROUND_ROBIN
-
-sqlFederation:
-  sqlFederationEnabled: true
-  executionPlanCache:
-    initialCapacity: 2000
-    maximumSize: 65535
     
 props:
   sql-show: true
diff --git 
a/test/e2e/sql/src/test/resources/env/scenario/dbtbl_with_readwrite_splitting_and_encrypt/proxy/mode/cluster/global.yaml
 
b/test/e2e/sql/src/test/resources/env/scenario/dbtbl_with_readwrite_splitting_and_encrypt/proxy/mode/cluster/global.yaml
index c668a345957..34e9b99aca0 100644
--- 
a/test/e2e/sql/src/test/resources/env/scenario/dbtbl_with_readwrite_splitting_and_encrypt/proxy/mode/cluster/global.yaml
+++ 
b/test/e2e/sql/src/test/resources/env/scenario/dbtbl_with_readwrite_splitting_and_encrypt/proxy/mode/cluster/global.yaml
@@ -42,12 +42,6 @@ sqlParser:
   parseTreeCache:
     initialCapacity: 128
     maximumSize: 1024
-    
-sqlFederation:
-  sqlFederationEnabled: true
-  executionPlanCache:
-    initialCapacity: 2000
-    maximumSize: 65535
 
 props:
   max-connections-size-per-query: 1
diff --git 
a/test/e2e/sql/src/test/resources/env/scenario/dbtbl_with_readwrite_splitting_and_encrypt/proxy/mode/standalone/global.yaml
 
b/test/e2e/sql/src/test/resources/env/scenario/dbtbl_with_readwrite_splitting_and_encrypt/proxy/mode/standalone/global.yaml
index a28537f9714..35dbce0ae4b 100644
--- 
a/test/e2e/sql/src/test/resources/env/scenario/dbtbl_with_readwrite_splitting_and_encrypt/proxy/mode/standalone/global.yaml
+++ 
b/test/e2e/sql/src/test/resources/env/scenario/dbtbl_with_readwrite_splitting_and_encrypt/proxy/mode/standalone/global.yaml
@@ -31,12 +31,6 @@ sqlParser:
     initialCapacity: 128
     maximumSize: 1024
 
-sqlFederation:
-  sqlFederationEnabled: true
-  executionPlanCache:
-    initialCapacity: 2000
-    maximumSize: 65535
-
 props:
   max-connections-size-per-query: 1
   kernel-executor-size: 16  # Infinite by default.
diff --git 
a/test/e2e/sql/src/test/resources/env/scenario/dbtbl_with_readwrite_splitting_and_encrypt/rules.yaml
 
b/test/e2e/sql/src/test/resources/env/scenario/dbtbl_with_readwrite_splitting_and_encrypt/rules.yaml
index 0cc032bf645..1aef384ace6 100644
--- 
a/test/e2e/sql/src/test/resources/env/scenario/dbtbl_with_readwrite_splitting_and_encrypt/rules.yaml
+++ 
b/test/e2e/sql/src/test/resources/env/scenario/dbtbl_with_readwrite_splitting_and_encrypt/rules.yaml
@@ -188,12 +188,6 @@ rules:
           cipher:
             name: number_new_cipher
             encryptorName: aes_encryptor
-
-sqlFederation:
-  sqlFederationEnabled: true
-  executionPlanCache:
-    initialCapacity: 2000
-    maximumSize: 65535
     
 props:
   sql-show: true
diff --git 
a/test/e2e/sql/src/test/resources/env/scenario/empty_rules/proxy/mode/cluster/global.yaml
 
b/test/e2e/sql/src/test/resources/env/scenario/empty_rules/proxy/mode/cluster/global.yaml
index c3040ca9082..db5ce2e1258 100644
--- 
a/test/e2e/sql/src/test/resources/env/scenario/empty_rules/proxy/mode/cluster/global.yaml
+++ 
b/test/e2e/sql/src/test/resources/env/scenario/empty_rules/proxy/mode/cluster/global.yaml
@@ -42,12 +42,6 @@ sqlParser:
   parseTreeCache:
     initialCapacity: 128
     maximumSize: 1024
-    
-sqlFederation:
-  sqlFederationEnabled: true
-  executionPlanCache:
-    initialCapacity: 2000
-    maximumSize: 65535
 
 props:
   max-connections-size-per-query: 1
diff --git 
a/test/e2e/sql/src/test/resources/env/scenario/empty_rules/proxy/mode/standalone/global.yaml
 
b/test/e2e/sql/src/test/resources/env/scenario/empty_rules/proxy/mode/standalone/global.yaml
index a28537f9714..35dbce0ae4b 100644
--- 
a/test/e2e/sql/src/test/resources/env/scenario/empty_rules/proxy/mode/standalone/global.yaml
+++ 
b/test/e2e/sql/src/test/resources/env/scenario/empty_rules/proxy/mode/standalone/global.yaml
@@ -31,12 +31,6 @@ sqlParser:
     initialCapacity: 128
     maximumSize: 1024
 
-sqlFederation:
-  sqlFederationEnabled: true
-  executionPlanCache:
-    initialCapacity: 2000
-    maximumSize: 65535
-
 props:
   max-connections-size-per-query: 1
   kernel-executor-size: 16  # Infinite by default.
diff --git 
a/test/e2e/sql/src/test/resources/env/scenario/empty_storage_units/proxy/mode/cluster/global.yaml
 
b/test/e2e/sql/src/test/resources/env/scenario/empty_storage_units/proxy/mode/cluster/global.yaml
index fc2946d3ba8..ccba03734f6 100644
--- 
a/test/e2e/sql/src/test/resources/env/scenario/empty_storage_units/proxy/mode/cluster/global.yaml
+++ 
b/test/e2e/sql/src/test/resources/env/scenario/empty_storage_units/proxy/mode/cluster/global.yaml
@@ -42,12 +42,6 @@ sqlParser:
   parseTreeCache:
     initialCapacity: 128
     maximumSize: 1024
-    
-sqlFederation:
-  sqlFederationEnabled: true
-  executionPlanCache:
-    initialCapacity: 2000
-    maximumSize: 65535
 
 props:
   max-connections-size-per-query: 1
diff --git 
a/test/e2e/sql/src/test/resources/env/scenario/empty_storage_units/proxy/mode/cluster/mysql/global.yaml
 
b/test/e2e/sql/src/test/resources/env/scenario/empty_storage_units/proxy/mode/cluster/mysql/global.yaml
index 894dd585dc7..d10e4ab4b1d 100644
--- 
a/test/e2e/sql/src/test/resources/env/scenario/empty_storage_units/proxy/mode/cluster/mysql/global.yaml
+++ 
b/test/e2e/sql/src/test/resources/env/scenario/empty_storage_units/proxy/mode/cluster/mysql/global.yaml
@@ -42,12 +42,6 @@ sqlParser:
   parseTreeCache:
     initialCapacity: 128
     maximumSize: 1024
-    
-sqlFederation:
-  sqlFederationEnabled: true
-  executionPlanCache:
-    initialCapacity: 2000
-    maximumSize: 65535
 
 props:
   max-connections-size-per-query: 1
diff --git 
a/test/e2e/sql/src/test/resources/env/scenario/empty_storage_units/proxy/mode/cluster/opengauss/global.yaml
 
b/test/e2e/sql/src/test/resources/env/scenario/empty_storage_units/proxy/mode/cluster/opengauss/global.yaml
index a8adcf712d2..dd2c98dd9f9 100644
--- 
a/test/e2e/sql/src/test/resources/env/scenario/empty_storage_units/proxy/mode/cluster/opengauss/global.yaml
+++ 
b/test/e2e/sql/src/test/resources/env/scenario/empty_storage_units/proxy/mode/cluster/opengauss/global.yaml
@@ -42,12 +42,6 @@ sqlParser:
   parseTreeCache:
     initialCapacity: 128
     maximumSize: 1024
-    
-sqlFederation:
-  sqlFederationEnabled: true
-  executionPlanCache:
-    initialCapacity: 2000
-    maximumSize: 65535
 
 props:
   max-connections-size-per-query: 1
diff --git 
a/test/e2e/sql/src/test/resources/env/scenario/empty_storage_units/proxy/mode/cluster/postgresql/global.yaml
 
b/test/e2e/sql/src/test/resources/env/scenario/empty_storage_units/proxy/mode/cluster/postgresql/global.yaml
index 9041b6be1a3..7916add120a 100644
--- 
a/test/e2e/sql/src/test/resources/env/scenario/empty_storage_units/proxy/mode/cluster/postgresql/global.yaml
+++ 
b/test/e2e/sql/src/test/resources/env/scenario/empty_storage_units/proxy/mode/cluster/postgresql/global.yaml
@@ -42,12 +42,6 @@ sqlParser:
   parseTreeCache:
     initialCapacity: 128
     maximumSize: 1024
-    
-sqlFederation:
-  sqlFederationEnabled: true
-  executionPlanCache:
-    initialCapacity: 2000
-    maximumSize: 65535
 
 props:
   max-connections-size-per-query: 1
diff --git 
a/test/e2e/sql/src/test/resources/env/scenario/empty_storage_units/proxy/mode/standalone/global.yaml
 
b/test/e2e/sql/src/test/resources/env/scenario/empty_storage_units/proxy/mode/standalone/global.yaml
index a28537f9714..35dbce0ae4b 100644
--- 
a/test/e2e/sql/src/test/resources/env/scenario/empty_storage_units/proxy/mode/standalone/global.yaml
+++ 
b/test/e2e/sql/src/test/resources/env/scenario/empty_storage_units/proxy/mode/standalone/global.yaml
@@ -31,12 +31,6 @@ sqlParser:
     initialCapacity: 128
     maximumSize: 1024
 
-sqlFederation:
-  sqlFederationEnabled: true
-  executionPlanCache:
-    initialCapacity: 2000
-    maximumSize: 65535
-
 props:
   max-connections-size-per-query: 1
   kernel-executor-size: 16  # Infinite by default.
diff --git 
a/test/e2e/sql/src/test/resources/env/scenario/empty_storage_units/proxy/mode/standalone/mysql/global.yaml
 
b/test/e2e/sql/src/test/resources/env/scenario/empty_storage_units/proxy/mode/standalone/mysql/global.yaml
index a7aa90c9767..e9df1024e1b 100644
--- 
a/test/e2e/sql/src/test/resources/env/scenario/empty_storage_units/proxy/mode/standalone/mysql/global.yaml
+++ 
b/test/e2e/sql/src/test/resources/env/scenario/empty_storage_units/proxy/mode/standalone/mysql/global.yaml
@@ -31,12 +31,6 @@ sqlParser:
     initialCapacity: 128
     maximumSize: 1024
 
-sqlFederation:
-  sqlFederationEnabled: true
-  executionPlanCache:
-    initialCapacity: 2000
-    maximumSize: 65535
-
 props:
   max-connections-size-per-query: 1
   kernel-executor-size: 16  # Infinite by default.
diff --git 
a/test/e2e/sql/src/test/resources/env/scenario/empty_storage_units/proxy/mode/standalone/opengauss/global.yaml
 
b/test/e2e/sql/src/test/resources/env/scenario/empty_storage_units/proxy/mode/standalone/opengauss/global.yaml
index cb18f4abb65..ba68ac9e47b 100644
--- 
a/test/e2e/sql/src/test/resources/env/scenario/empty_storage_units/proxy/mode/standalone/opengauss/global.yaml
+++ 
b/test/e2e/sql/src/test/resources/env/scenario/empty_storage_units/proxy/mode/standalone/opengauss/global.yaml
@@ -31,12 +31,6 @@ sqlParser:
     initialCapacity: 128
     maximumSize: 1024
 
-sqlFederation:
-  sqlFederationEnabled: true
-  executionPlanCache:
-    initialCapacity: 2000
-    maximumSize: 65535
-
 props:
   max-connections-size-per-query: 1
   kernel-executor-size: 16  # Infinite by default.
diff --git 
a/test/e2e/sql/src/test/resources/env/scenario/empty_storage_units/proxy/mode/standalone/postgresql/global.yaml
 
b/test/e2e/sql/src/test/resources/env/scenario/empty_storage_units/proxy/mode/standalone/postgresql/global.yaml
index 26a93a1dc5b..a754927c012 100644
--- 
a/test/e2e/sql/src/test/resources/env/scenario/empty_storage_units/proxy/mode/standalone/postgresql/global.yaml
+++ 
b/test/e2e/sql/src/test/resources/env/scenario/empty_storage_units/proxy/mode/standalone/postgresql/global.yaml
@@ -31,12 +31,6 @@ sqlParser:
     initialCapacity: 128
     maximumSize: 1024
 
-sqlFederation:
-  sqlFederationEnabled: true
-  executionPlanCache:
-    initialCapacity: 2000
-    maximumSize: 65535
-
 props:
   max-connections-size-per-query: 1
   kernel-executor-size: 16  # Infinite by default.
diff --git 
a/test/e2e/sql/src/test/resources/env/scenario/sharding_and_encrypt/proxy/mode/cluster/global.yaml
 
b/test/e2e/sql/src/test/resources/env/scenario/sharding_and_encrypt/proxy/mode/cluster/global.yaml
index cf2949959c8..f8841423e8d 100644
--- 
a/test/e2e/sql/src/test/resources/env/scenario/sharding_and_encrypt/proxy/mode/cluster/global.yaml
+++ 
b/test/e2e/sql/src/test/resources/env/scenario/sharding_and_encrypt/proxy/mode/cluster/global.yaml
@@ -35,12 +35,6 @@ authority:
   privilege:
     type: ALL_PERMITTED
 
-sqlFederation:
-  sqlFederationEnabled: true
-  executionPlanCache:
-    initialCapacity: 2000
-    maximumSize: 65535
-
 props:
   max-connections-size-per-query: 1
   kernel-executor-size: 16  # Infinite by default.
diff --git 
a/test/e2e/sql/src/test/resources/env/scenario/sharding_and_encrypt/proxy/mode/standalone/global.yaml
 
b/test/e2e/sql/src/test/resources/env/scenario/sharding_and_encrypt/proxy/mode/standalone/global.yaml
index 841607a55b3..7bff27a9adc 100644
--- 
a/test/e2e/sql/src/test/resources/env/scenario/sharding_and_encrypt/proxy/mode/standalone/global.yaml
+++ 
b/test/e2e/sql/src/test/resources/env/scenario/sharding_and_encrypt/proxy/mode/standalone/global.yaml
@@ -23,12 +23,6 @@ authority:
   privilege:
     type: ALL_PERMITTED
 
-sqlFederation:
-  sqlFederationEnabled: true
-  executionPlanCache:
-    initialCapacity: 2000
-    maximumSize: 65535
-
 props:
   max-connections-size-per-query: 1
   kernel-executor-size: 16  # Infinite by default.
diff --git 
a/test/e2e/sql/src/test/resources/env/scenario/tbl/proxy/mode/cluster/global.yaml
 
b/test/e2e/sql/src/test/resources/env/scenario/tbl/proxy/mode/cluster/global.yaml
index e16b55b1962..db5ce2e1258 100644
--- 
a/test/e2e/sql/src/test/resources/env/scenario/tbl/proxy/mode/cluster/global.yaml
+++ 
b/test/e2e/sql/src/test/resources/env/scenario/tbl/proxy/mode/cluster/global.yaml
@@ -42,12 +42,6 @@ sqlParser:
   parseTreeCache:
     initialCapacity: 128
     maximumSize: 1024
-    
-sqlFederation:
-  sqlFederationEnabled: false
-  executionPlanCache:
-    initialCapacity: 2000
-    maximumSize: 65535
 
 props:
   max-connections-size-per-query: 1
diff --git 
a/test/e2e/sql/src/test/resources/env/scenario/tbl/proxy/mode/standalone/global.yaml
 
b/test/e2e/sql/src/test/resources/env/scenario/tbl/proxy/mode/standalone/global.yaml
index a54e1c47860..35dbce0ae4b 100644
--- 
a/test/e2e/sql/src/test/resources/env/scenario/tbl/proxy/mode/standalone/global.yaml
+++ 
b/test/e2e/sql/src/test/resources/env/scenario/tbl/proxy/mode/standalone/global.yaml
@@ -31,12 +31,6 @@ sqlParser:
     initialCapacity: 128
     maximumSize: 1024
 
-sqlFederation:
-  sqlFederationEnabled: false
-  executionPlanCache:
-    initialCapacity: 2000
-    maximumSize: 65535
-
 props:
   max-connections-size-per-query: 1
   kernel-executor-size: 16  # Infinite by default.

Reply via email to