You are viewing a plain text version of this content. The canonical link for it is here.
Posted to notifications@shardingsphere.apache.org by pa...@apache.org on 2023/04/19 01:24:02 UTC
[shardingsphere] branch master updated: Remove property proxy-backend-executor-suitable (#25212)
This is an automated email from the ASF dual-hosted git repository.
panjuan 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 37adda4c741 Remove property proxy-backend-executor-suitable (#25212)
37adda4c741 is described below
commit 37adda4c7415687a5db3e525d0c3aa081452eef8
Author: 吴伟杰 <wu...@apache.org>
AuthorDate: Wed Apr 19 09:23:46 2023 +0800
Remove property proxy-backend-executor-suitable (#25212)
---
.../shardingsphere-proxy/yaml-config/props.cn.md | 1 -
.../shardingsphere-proxy/yaml-config/props.en.md | 1 -
.../src/main/resources/server/server.yaml | 3 ---
.../infra/config/props/BackendExecutorType.java | 26 ----------------------
.../config/props/ConfigurationPropertyKey.java | 6 -----
.../config/props/ConfigurationPropertiesTest.java | 3 ---
.../queryable/ShowDistVariablesExecutorTest.java | 2 +-
.../bootstrap/src/main/resources/conf/server.yaml | 3 ---
.../proxy/frontend/state/impl/OKProxyState.java | 16 ++++---------
.../frontend/state/impl/OKProxyStateTest.java | 15 -------------
.../src/test/resources/env/opengauss/server.yaml | 1 -
.../src/test/resources/env/postgresql/server.yaml | 3 ---
.../src/test/resources/env/opengauss/server.yaml | 1 -
.../src/test/resources/env/postgresql/server.yaml | 3 ---
14 files changed, 5 insertions(+), 79 deletions(-)
diff --git a/docs/document/content/user-manual/shardingsphere-proxy/yaml-config/props.cn.md b/docs/document/content/user-manual/shardingsphere-proxy/yaml-config/props.cn.md
index 59b5dfa95a0..4c25bfc8b71 100644
--- a/docs/document/content/user-manual/shardingsphere-proxy/yaml-config/props.cn.md
+++ b/docs/document/content/user-manual/shardingsphere-proxy/yaml-config/props.cn.md
@@ -22,7 +22,6 @@ Apache ShardingSphere 提供了丰富的系统配置属性,用户可通过 `se
| proxy-hint-enabled (?) | boolean | 是否允许在 ShardingSphere-Proxy 中使用 Hint。使用 Hint 会将 Proxy 的线程处理模型由 IO 多路复用变更为每个请求一个独立的线程,会降低 Proxy 的吞吐量。 | false | 是 |
| proxy-backend-query-fetch-size (?) | int | Proxy 后端与数据库交互的每次获取数据行数(使用游标的情况下)。数值增大可能会增加 ShardingSphere Proxy 的内存使用。默认值为 -1,代表设置为 JDBC 驱动的最小值。 | -1 | 是 |
| proxy-frontend-executor-size (?) | int | Proxy 前端 Netty 线程池线程数量,默认值 0 代表使用 Netty 默认值。 | 0 | 否 |
-| proxy-backend-executor-suitable (?) | String | 可选选项:OLAP、OLTP。OLTP 选项可能会减少向客户端写入数据包的时间开销,但如果客户端连接数超过 `proxy-frontend-executor-size`,尤其是执行慢 SQL 时,它可能会增加 SQL 执行的延迟甚至阻塞其他客户端的连接。 | OLAP | 是 |
| proxy-frontend-max-connections (?) | int | 允许连接 Proxy 的最大客户端数量,默认值 0 代表不限制。 | 0 | 是 |
| sql-federation-type (?) | String | 联邦查询执行器类型,包括:NONE,ORIGINAL,ADVANCED。 | NONE | 是 |
| proxy-mysql-default-version (?) | String | Proxy 通过配置文件指定 MySQL 的版本号,默认版本:5.7.22。 | 5.7.22 | 否 |
diff --git a/docs/document/content/user-manual/shardingsphere-proxy/yaml-config/props.en.md b/docs/document/content/user-manual/shardingsphere-proxy/yaml-config/props.en.md
index bcbcf0dd29d..48329460650 100644
--- a/docs/document/content/user-manual/shardingsphere-proxy/yaml-config/props.en.md
+++ b/docs/document/content/user-manual/shardingsphere-proxy/yaml-config/props.en.md
@@ -22,7 +22,6 @@ Apache ShardingSphere provides a wealth of system configuration properties, whic
| proxy-hint-enabled (?) | boolean | Whether Hint is allowed in ShardingSphere-Proxy. Using Hint changes the Proxy's threading model from IO multiplexing to a separate thread per request, reducing Proxy's throughput. | false | True |
| proxy-backend-query-fetch-size (?) | int | The number of rows of data obtained when the backend Proxy interacts with databases (using a cursor). A larger number may increase the occupied memory of ShardingSphere-Proxy. The default value of -1 indicates the minimum value for JDBC driver. | -1 | True |
| proxy-frontend-executor-size (?) | int | The number of threads in the Netty thread pool of front-end Proxy. | 0 | False |
-| proxy-backend-executor-suitable (?) | String | Options: OLAP and OLTP. The OLTP option may reduce the time overhead when writing packets to the client, but if the number of client connections exceeds `proxy-frontend-executor-size`, especially with slow SQL, it can cause a longer delay to SQL execution and even block connections to other clients. | OLAP | True |
| proxy-frontend-max-connections (?) | int | The maximum number of clients that can be connected to Proxy. The default value of 0 indicates that there's no limit. | 0 | True |
| sql-federation-type (?) | String | SQL federation executor type, including: NONE, ORIGINAL, ADVANCED. | NONE | True |
| proxy-mysql-default-version (?) | String | Proxy specifies the MySQL version through configuration files, and the default verison is 5.7.22. | 5.7.22 | False |
diff --git a/examples/shardingsphere-proxy-example/shardingsphere-proxy-distsql-example/src/main/resources/server/server.yaml b/examples/shardingsphere-proxy-example/shardingsphere-proxy-distsql-example/src/main/resources/server/server.yaml
index addc5cbda5e..d93a9d599b3 100644
--- a/examples/shardingsphere-proxy-example/shardingsphere-proxy-distsql-example/src/main/resources/server/server.yaml
+++ b/examples/shardingsphere-proxy-example/shardingsphere-proxy-distsql-example/src/main/resources/server/server.yaml
@@ -61,6 +61,3 @@ props:
# The default value is -1, which means set the minimum value for different JDBC drivers.
proxy-backend-query-fetch-size: -1
proxy-frontend-executor-size: 0 # Proxy frontend executor size. The default value is 0, which means let Netty decide.
- # Available options of proxy backend executor suitable: OLAP(default), OLTP. The OLTP option may reduce time cost of writing packets to client, but it may increase the latency of SQL execution
- # if client connections are more than proxy-frontend-netty-executor-size, especially executing slow SQL.
- proxy-backend-executor-suitable: OLAP
diff --git a/infra/common/src/main/java/org/apache/shardingsphere/infra/config/props/BackendExecutorType.java b/infra/common/src/main/java/org/apache/shardingsphere/infra/config/props/BackendExecutorType.java
deleted file mode 100644
index d070dc062bf..00000000000
--- a/infra/common/src/main/java/org/apache/shardingsphere/infra/config/props/BackendExecutorType.java
+++ /dev/null
@@ -1,26 +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.
- */
-
-package org.apache.shardingsphere.infra.config.props;
-
-/**
- * Backend executor type.
- */
-public enum BackendExecutorType {
-
- OLTP, OLAP
-}
diff --git a/infra/common/src/main/java/org/apache/shardingsphere/infra/config/props/ConfigurationPropertyKey.java b/infra/common/src/main/java/org/apache/shardingsphere/infra/config/props/ConfigurationPropertyKey.java
index 5784dcf38aa..fdda90d5d37 100644
--- a/infra/common/src/main/java/org/apache/shardingsphere/infra/config/props/ConfigurationPropertyKey.java
+++ b/infra/common/src/main/java/org/apache/shardingsphere/infra/config/props/ConfigurationPropertyKey.java
@@ -93,12 +93,6 @@ public enum ConfigurationPropertyKey implements TypedPropertyKey {
*/
PROXY_FRONTEND_EXECUTOR_SIZE("proxy-frontend-executor-size", String.valueOf(0), int.class, true),
- /**
- * Available options of proxy backend executor suitable: OLAP(default), OLTP. The OLTP option may reduce time cost of writing packets to client, but it may increase the latency of SQL execution
- * and block other clients if client connections are more than {@link ConfigurationPropertyKey#PROXY_FRONTEND_EXECUTOR_SIZE}, especially executing slow SQL.
- */
- PROXY_BACKEND_EXECUTOR_SUITABLE("proxy-backend-executor-suitable", BackendExecutorType.OLAP.name(), BackendExecutorType.class, false),
-
/**
* Less than or equal to 0 means no limitation.
*/
diff --git a/infra/common/src/test/java/org/apache/shardingsphere/infra/config/props/ConfigurationPropertiesTest.java b/infra/common/src/test/java/org/apache/shardingsphere/infra/config/props/ConfigurationPropertiesTest.java
index 9e23588be14..10268841448 100644
--- a/infra/common/src/test/java/org/apache/shardingsphere/infra/config/props/ConfigurationPropertiesTest.java
+++ b/infra/common/src/test/java/org/apache/shardingsphere/infra/config/props/ConfigurationPropertiesTest.java
@@ -45,7 +45,6 @@ class ConfigurationPropertiesTest {
assertTrue((Boolean) actual.getValue(ConfigurationPropertyKey.PROXY_HINT_ENABLED));
assertThat(actual.getValue(ConfigurationPropertyKey.PROXY_BACKEND_QUERY_FETCH_SIZE), is(20));
assertThat(actual.getValue(ConfigurationPropertyKey.PROXY_FRONTEND_EXECUTOR_SIZE), is(20));
- assertThat(actual.getValue(ConfigurationPropertyKey.PROXY_BACKEND_EXECUTOR_SUITABLE), is(BackendExecutorType.OLTP));
assertThat(actual.getValue(ConfigurationPropertyKey.PROXY_FRONTEND_MAX_CONNECTIONS), is(20));
assertThat(actual.getValue(ConfigurationPropertyKey.PROXY_MYSQL_DEFAULT_VERSION), is("5.7.22"));
assertThat(actual.getValue(ConfigurationPropertyKey.PROXY_DEFAULT_PORT), is(3308));
@@ -67,7 +66,6 @@ class ConfigurationPropertiesTest {
new Property(ConfigurationPropertyKey.PROXY_HINT_ENABLED.getKey(), Boolean.TRUE.toString()),
new Property(ConfigurationPropertyKey.PROXY_BACKEND_QUERY_FETCH_SIZE.getKey(), "20"),
new Property(ConfigurationPropertyKey.PROXY_FRONTEND_EXECUTOR_SIZE.getKey(), "20"),
- new Property(ConfigurationPropertyKey.PROXY_BACKEND_EXECUTOR_SUITABLE.getKey(), BackendExecutorType.OLTP.name()),
new Property(ConfigurationPropertyKey.PROXY_FRONTEND_MAX_CONNECTIONS.getKey(), "20"),
new Property(ConfigurationPropertyKey.PROXY_MYSQL_DEFAULT_VERSION.getKey(), "5.7.22"),
new Property(ConfigurationPropertyKey.PROXY_DEFAULT_PORT.getKey(), "3308"),
@@ -90,7 +88,6 @@ class ConfigurationPropertiesTest {
assertFalse((Boolean) actual.getValue(ConfigurationPropertyKey.PROXY_HINT_ENABLED));
assertThat(actual.getValue(ConfigurationPropertyKey.PROXY_BACKEND_QUERY_FETCH_SIZE), is(-1));
assertThat(actual.getValue(ConfigurationPropertyKey.PROXY_FRONTEND_EXECUTOR_SIZE), is(0));
- assertThat(actual.getValue(ConfigurationPropertyKey.PROXY_BACKEND_EXECUTOR_SUITABLE), is(BackendExecutorType.OLAP));
assertThat(actual.getValue(ConfigurationPropertyKey.PROXY_FRONTEND_MAX_CONNECTIONS), is(0));
assertThat(actual.getValue(ConfigurationPropertyKey.PROXY_MYSQL_DEFAULT_VERSION), is("5.7.22"));
assertThat(actual.getValue(ConfigurationPropertyKey.PROXY_DEFAULT_PORT), is(3307));
diff --git a/proxy/backend/core/src/test/java/org/apache/shardingsphere/proxy/backend/handler/distsql/ral/queryable/ShowDistVariablesExecutorTest.java b/proxy/backend/core/src/test/java/org/apache/shardingsphere/proxy/backend/handler/distsql/ral/queryable/ShowDistVariablesExecutorTest.java
index d85edaa8446..b303c0be2d8 100644
--- a/proxy/backend/core/src/test/java/org/apache/shardingsphere/proxy/backend/handler/distsql/ral/queryable/ShowDistVariablesExecutorTest.java
+++ b/proxy/backend/core/src/test/java/org/apache/shardingsphere/proxy/backend/handler/distsql/ral/queryable/ShowDistVariablesExecutorTest.java
@@ -63,7 +63,7 @@ class ShowDistVariablesExecutorTest {
when(metaData.getGlobalRuleMetaData()).thenReturn(new ShardingSphereRuleMetaData(Collections.singleton(new LoggingRule(new DefaultLoggingRuleConfigurationBuilder().build()))));
ShowDistVariablesExecutor executor = new ShowDistVariablesExecutor();
Collection<LocalDataQueryResultRow> actual = executor.getRows(metaData, connectionSession, mock(ShowDistVariablesStatement.class));
- assertThat(actual.size(), is(23));
+ assertThat(actual.size(), is(22));
LocalDataQueryResultRow row = actual.iterator().next();
assertThat(row.getCell(1), is("agent_plugins_enabled"));
assertThat(row.getCell(2), is("true"));
diff --git a/proxy/bootstrap/src/main/resources/conf/server.yaml b/proxy/bootstrap/src/main/resources/conf/server.yaml
index a8574979a05..872bed96992 100644
--- a/proxy/bootstrap/src/main/resources/conf/server.yaml
+++ b/proxy/bootstrap/src/main/resources/conf/server.yaml
@@ -76,9 +76,6 @@
# # The default value is -1, which means set the minimum value for different JDBC drivers.
# proxy-backend-query-fetch-size: -1
# proxy-frontend-executor-size: 0 # Proxy frontend executor size. The default value is 0, which means let Netty decide.
-# # Available options of proxy backend executor suitable: OLAP(default), OLTP. The OLTP option may reduce time cost of writing packets to client, but it may increase the latency of SQL execution
-# # and block other clients if client connections are more than `proxy-frontend-executor-size`, especially executing slow SQL.
-# proxy-backend-executor-suitable: OLAP
# proxy-frontend-max-connections: 0 # Less than or equal to 0 means no limitation.
# # Available sql federation type: NONE (default), ORIGINAL, ADVANCED
# sql-federation-type: NONE
diff --git a/proxy/frontend/core/src/main/java/org/apache/shardingsphere/proxy/frontend/state/impl/OKProxyState.java b/proxy/frontend/core/src/main/java/org/apache/shardingsphere/proxy/frontend/state/impl/OKProxyState.java
index 08276055970..2ef8c0eede9 100644
--- a/proxy/frontend/core/src/main/java/org/apache/shardingsphere/proxy/frontend/state/impl/OKProxyState.java
+++ b/proxy/frontend/core/src/main/java/org/apache/shardingsphere/proxy/frontend/state/impl/OKProxyState.java
@@ -18,7 +18,6 @@
package org.apache.shardingsphere.proxy.frontend.state.impl;
import io.netty.channel.ChannelHandlerContext;
-import org.apache.shardingsphere.infra.config.props.BackendExecutorType;
import org.apache.shardingsphere.infra.config.props.ConfigurationPropertyKey;
import org.apache.shardingsphere.proxy.backend.context.ProxyContext;
import org.apache.shardingsphere.proxy.backend.session.ConnectionSession;
@@ -38,25 +37,18 @@ public final class OKProxyState implements ProxyState {
@Override
public void execute(final ChannelHandlerContext context, final Object message, final DatabaseProtocolFrontendEngine databaseProtocolFrontendEngine, final ConnectionSession connectionSession) {
- ExecutorService executorService = determineSuitableExecutorService(context, connectionSession);
+ ExecutorService executorService = determineSuitableExecutorService(connectionSession);
context.channel().config().setAutoRead(false);
executorService.execute(new CommandExecutorTask(databaseProtocolFrontendEngine, connectionSession, context, message));
}
- private ExecutorService determineSuitableExecutorService(final ChannelHandlerContext context, final ConnectionSession connectionSession) {
- if (requireOccupyThreadForConnection(connectionSession)) {
- return ConnectionThreadExecutorGroup.getInstance().get(connectionSession.getConnectionId());
- }
- return isPreferNettyEventLoop() ? context.executor() : UserExecutorGroup.getInstance().getExecutorService();
+ private ExecutorService determineSuitableExecutorService(final ConnectionSession connectionSession) {
+ return requireOccupyThreadForConnection(connectionSession) ? ConnectionThreadExecutorGroup.getInstance().get(connectionSession.getConnectionId())
+ : UserExecutorGroup.getInstance().getExecutorService();
}
private boolean requireOccupyThreadForConnection(final ConnectionSession connectionSession) {
return ProxyContext.getInstance().getContextManager().getMetaDataContexts().getMetaData().getProps().<Boolean>getValue(ConfigurationPropertyKey.PROXY_HINT_ENABLED)
|| TransactionType.isDistributedTransaction(connectionSession.getTransactionStatus().getTransactionType());
}
-
- private boolean isPreferNettyEventLoop() {
- return BackendExecutorType.OLTP == ProxyContext.getInstance()
- .getContextManager().getMetaDataContexts().getMetaData().getProps().<BackendExecutorType>getValue(ConfigurationPropertyKey.PROXY_BACKEND_EXECUTOR_SUITABLE);
- }
}
diff --git a/proxy/frontend/core/src/test/java/org/apache/shardingsphere/proxy/frontend/state/impl/OKProxyStateTest.java b/proxy/frontend/core/src/test/java/org/apache/shardingsphere/proxy/frontend/state/impl/OKProxyStateTest.java
index f8339f3399e..bc2417e9482 100644
--- a/proxy/frontend/core/src/test/java/org/apache/shardingsphere/proxy/frontend/state/impl/OKProxyStateTest.java
+++ b/proxy/frontend/core/src/test/java/org/apache/shardingsphere/proxy/frontend/state/impl/OKProxyStateTest.java
@@ -19,9 +19,7 @@ package org.apache.shardingsphere.proxy.frontend.state.impl;
import io.netty.channel.ChannelHandlerContext;
import io.netty.channel.embedded.EmbeddedChannel;
-import io.netty.util.concurrent.EventExecutor;
import lombok.SneakyThrows;
-import org.apache.shardingsphere.infra.config.props.BackendExecutorType;
import org.apache.shardingsphere.infra.config.props.ConfigurationPropertyKey;
import org.apache.shardingsphere.mode.manager.ContextManager;
import org.apache.shardingsphere.proxy.backend.context.ProxyContext;
@@ -91,19 +89,6 @@ class OKProxyStateTest {
ConnectionThreadExecutorGroup.getInstance().unregisterAndAwaitTermination(1);
}
- @Test
- void assertExecuteWithProxyBackendExecutorSuitableForOLTP() {
- ContextManager contextManager = mock(ContextManager.class, RETURNS_DEEP_STUBS);
- when(contextManager.getMetaDataContexts().getMetaData().getProps().<Boolean>getValue(ConfigurationPropertyKey.PROXY_HINT_ENABLED)).thenReturn(false);
- when(contextManager.getMetaDataContexts().getMetaData().getProps().<BackendExecutorType>getValue(
- ConfigurationPropertyKey.PROXY_BACKEND_EXECUTOR_SUITABLE)).thenReturn(BackendExecutorType.OLTP);
- when(ProxyContext.getInstance().getContextManager()).thenReturn(contextManager);
- EventExecutor eventExecutor = mock(EventExecutor.class);
- when(context.executor()).thenReturn(eventExecutor);
- new OKProxyState().execute(context, null, mock(DatabaseProtocolFrontendEngine.class), mock(ConnectionSession.class, RETURNS_DEEP_STUBS));
- verify(eventExecutor).execute(any(CommandExecutorTask.class));
- }
-
@SuppressWarnings({"unchecked", "SameParameterValue"})
@SneakyThrows(ReflectiveOperationException.class)
private ExecutorService registerMockExecutorService(final int connectionId) {
diff --git a/test/e2e/operation/pipeline/src/test/resources/env/opengauss/server.yaml b/test/e2e/operation/pipeline/src/test/resources/env/opengauss/server.yaml
index 9e05f478e51..3469ae1c26a 100644
--- a/test/e2e/operation/pipeline/src/test/resources/env/opengauss/server.yaml
+++ b/test/e2e/operation/pipeline/src/test/resources/env/opengauss/server.yaml
@@ -42,7 +42,6 @@ props:
sql-show: false
check-table-metadata-enabled: false
proxy-backend-query-fetch-size: -1
- proxy-backend-executor-suitable: OLAP
proxy-frontend-max-connections: 0 # Less than or equal to 0 means no limitation.
# Available sql federation type: NONE (default), ORIGINAL, ADVANCED
sql-federation-type: NONE
diff --git a/test/e2e/operation/pipeline/src/test/resources/env/postgresql/server.yaml b/test/e2e/operation/pipeline/src/test/resources/env/postgresql/server.yaml
index 07a11385cfe..995f6b62237 100644
--- a/test/e2e/operation/pipeline/src/test/resources/env/postgresql/server.yaml
+++ b/test/e2e/operation/pipeline/src/test/resources/env/postgresql/server.yaml
@@ -45,9 +45,6 @@ props:
# The default value is -1, which means set the minimum value for different JDBC drivers.
proxy-backend-query-fetch-size: -1
proxy-frontend-executor-size: 0 # Proxy frontend executor size. The default value is 0, which means let Netty decide.
- # Available options of proxy backend executor suitable: OLAP(default), OLTP. The OLTP option may reduce time cost of writing packets to client, but it may increase the latency of SQL execution
- # and block other clients if client connections are more than `proxy-frontend-executor-size`, especially executing slow SQL.
- proxy-backend-executor-suitable: OLAP
proxy-frontend-max-connections: 0 # Less than or equal to 0 means no limitation.
# Available sql federation type: NONE (default), ORIGINAL, ADVANCED
sql-federation-type: NONE
diff --git a/test/e2e/operation/transaction/src/test/resources/env/opengauss/server.yaml b/test/e2e/operation/transaction/src/test/resources/env/opengauss/server.yaml
index 64aac3d2848..070b1db5856 100644
--- a/test/e2e/operation/transaction/src/test/resources/env/opengauss/server.yaml
+++ b/test/e2e/operation/transaction/src/test/resources/env/opengauss/server.yaml
@@ -42,7 +42,6 @@ props:
sql-show: true
check-table-metadata-enabled: false
proxy-backend-query-fetch-size: -1
- proxy-backend-executor-suitable: OLAP
proxy-frontend-max-connections: 0 # Less than or equal to 0 means no limitation.
sql-federation-type: ADVANCED
proxy-frontend-database-protocol-type: openGauss
diff --git a/test/e2e/operation/transaction/src/test/resources/env/postgresql/server.yaml b/test/e2e/operation/transaction/src/test/resources/env/postgresql/server.yaml
index 3fb08aca5e2..2dbf471ac19 100644
--- a/test/e2e/operation/transaction/src/test/resources/env/postgresql/server.yaml
+++ b/test/e2e/operation/transaction/src/test/resources/env/postgresql/server.yaml
@@ -45,9 +45,6 @@ props:
# The default value is -1, which means set the minimum value for different JDBC drivers.
proxy-backend-query-fetch-size: -1
proxy-frontend-executor-size: 0 # Proxy frontend executor size. The default value is 0, which means let Netty decide.
- # Available options of proxy backend executor suitable: OLAP(default), OLTP. The OLTP option may reduce time cost of writing packets to client, but it may increase the latency of SQL execution
- # and block other clients if client connections are more than `proxy-frontend-executor-size`, especially executing slow SQL.
- proxy-backend-executor-suitable: OLAP
proxy-frontend-max-connections: 0 # Less than or equal to 0 means no limitation.
sql-federation-type: ADVANCED
proxy-frontend-database-protocol-type: PostgreSQL