This is an automated email from the ASF dual-hosted git repository.
jianglongtao 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 5bae5efd904 Refactor `UpdatableRALBackendHandler` (#24349)
5bae5efd904 is described below
commit 5bae5efd90448733dc001b8f8144bb63a4299a29
Author: Zichao <[email protected]>
AuthorDate: Sun Feb 26 14:36:11 2023 +0800
Refactor `UpdatableRALBackendHandler` (#24349)
---
.../distsql/ral/RALBackendHandlerFactory.java | 2 +-
...dHandler.java => UpdatableRALBackendHandler.java} | 4 +---
.../handler/ProxyBackendHandlerFactoryTest.java | 4 ++--
.../updatable/RefreshTableMetaDataUpdaterTest.java | 12 ++++++------
...tDistVariableUpdatableRALBackendHandlerTest.java} | 20 ++++++++++----------
5 files changed, 20 insertions(+), 22 deletions(-)
diff --git
a/proxy/backend/core/src/main/java/org/apache/shardingsphere/proxy/backend/handler/distsql/ral/RALBackendHandlerFactory.java
b/proxy/backend/core/src/main/java/org/apache/shardingsphere/proxy/backend/handler/distsql/ral/RALBackendHandlerFactory.java
index 5a156c1ddc0..89f8b6e3043 100644
---
a/proxy/backend/core/src/main/java/org/apache/shardingsphere/proxy/backend/handler/distsql/ral/RALBackendHandlerFactory.java
+++
b/proxy/backend/core/src/main/java/org/apache/shardingsphere/proxy/backend/handler/distsql/ral/RALBackendHandlerFactory.java
@@ -46,7 +46,7 @@ public final class RALBackendHandlerFactory {
}
// TODO remove other updatable RAL backend handlers after the
refactoring of RALBackendHandler is complete
if (TypedSPILoader.contains(RALUpdater.class,
sqlStatement.getClass().getName())) {
- return new
UpdatableRALUpdaterBackendHandler<>((UpdatableRALStatement) sqlStatement,
connectionSession);
+ return new UpdatableRALBackendHandler<>((UpdatableRALStatement)
sqlStatement, connectionSession);
}
return new UpdatableGlobalRuleRALBackendHandler(sqlStatement);
}
diff --git
a/proxy/backend/core/src/main/java/org/apache/shardingsphere/proxy/backend/handler/distsql/ral/UpdatableRALUpdaterBackendHandler.java
b/proxy/backend/core/src/main/java/org/apache/shardingsphere/proxy/backend/handler/distsql/ral/UpdatableRALBackendHandler.java
similarity index 92%
rename from
proxy/backend/core/src/main/java/org/apache/shardingsphere/proxy/backend/handler/distsql/ral/UpdatableRALUpdaterBackendHandler.java
rename to
proxy/backend/core/src/main/java/org/apache/shardingsphere/proxy/backend/handler/distsql/ral/UpdatableRALBackendHandler.java
index 6a60dc01fd3..329a5a15552 100644
---
a/proxy/backend/core/src/main/java/org/apache/shardingsphere/proxy/backend/handler/distsql/ral/UpdatableRALUpdaterBackendHandler.java
+++
b/proxy/backend/core/src/main/java/org/apache/shardingsphere/proxy/backend/handler/distsql/ral/UpdatableRALBackendHandler.java
@@ -31,12 +31,10 @@ import java.sql.SQLException;
/**
* Updatable RAL backend handler.
- * TODO replace UpdatableRALBackendHandler after its refactoring is complete
- *
*/
@RequiredArgsConstructor
@Setter
-public final class UpdatableRALUpdaterBackendHandler<T extends
UpdatableRALStatement> extends RALBackendHandler<T> {
+public final class UpdatableRALBackendHandler<T extends UpdatableRALStatement>
extends RALBackendHandler<T> {
private final UpdatableRALStatement sqlStatement;
diff --git
a/proxy/backend/core/src/test/java/org/apache/shardingsphere/proxy/backend/handler/ProxyBackendHandlerFactoryTest.java
b/proxy/backend/core/src/test/java/org/apache/shardingsphere/proxy/backend/handler/ProxyBackendHandlerFactoryTest.java
index d22d416d029..74436a675af 100644
---
a/proxy/backend/core/src/test/java/org/apache/shardingsphere/proxy/backend/handler/ProxyBackendHandlerFactoryTest.java
+++
b/proxy/backend/core/src/test/java/org/apache/shardingsphere/proxy/backend/handler/ProxyBackendHandlerFactoryTest.java
@@ -36,7 +36,7 @@ import
org.apache.shardingsphere.proxy.backend.context.ProxyContext;
import
org.apache.shardingsphere.proxy.backend.handler.admin.DatabaseAdminQueryBackendHandler;
import
org.apache.shardingsphere.proxy.backend.handler.data.impl.UnicastDatabaseBackendHandler;
import
org.apache.shardingsphere.proxy.backend.handler.distsql.ral.QueryableRALBackendHandler;
-import
org.apache.shardingsphere.proxy.backend.handler.distsql.ral.UpdatableRALUpdaterBackendHandler;
+import
org.apache.shardingsphere.proxy.backend.handler.distsql.ral.UpdatableRALBackendHandler;
import
org.apache.shardingsphere.proxy.backend.handler.distsql.rql.RQLBackendHandler;
import
org.apache.shardingsphere.proxy.backend.handler.distsql.rul.SQLRULBackendHandler;
import org.apache.shardingsphere.proxy.backend.handler.skip.SkipBackendHandler;
@@ -123,7 +123,7 @@ public final class ProxyBackendHandlerFactoryTest {
public void assertNewInstanceWithDistSQL() throws SQLException {
String sql = "set dist variable transaction_type='LOCAL'";
ProxyBackendHandler actual =
ProxyBackendHandlerFactory.newInstance(databaseType, sql, connectionSession);
- assertThat(actual,
instanceOf(UpdatableRALUpdaterBackendHandler.class));
+ assertThat(actual, instanceOf(UpdatableRALBackendHandler.class));
sql = "show dist variable where name = transaction_type";
actual = ProxyBackendHandlerFactory.newInstance(databaseType, sql,
connectionSession);
assertThat(actual, instanceOf(QueryableRALBackendHandler.class));
diff --git
a/proxy/backend/core/src/test/java/org/apache/shardingsphere/proxy/backend/handler/distsql/ral/updatable/RefreshTableMetaDataUpdaterTest.java
b/proxy/backend/core/src/test/java/org/apache/shardingsphere/proxy/backend/handler/distsql/ral/updatable/RefreshTableMetaDataUpdaterTest.java
index 412240a4010..ea8966f31e7 100644
---
a/proxy/backend/core/src/test/java/org/apache/shardingsphere/proxy/backend/handler/distsql/ral/updatable/RefreshTableMetaDataUpdaterTest.java
+++
b/proxy/backend/core/src/test/java/org/apache/shardingsphere/proxy/backend/handler/distsql/ral/updatable/RefreshTableMetaDataUpdaterTest.java
@@ -24,7 +24,7 @@ import
org.apache.shardingsphere.distsql.handler.exception.storageunit.MissingRe
import
org.apache.shardingsphere.distsql.parser.statement.ral.updatable.RefreshTableMetaDataStatement;
import org.apache.shardingsphere.mode.manager.ContextManager;
import org.apache.shardingsphere.proxy.backend.context.ProxyContext;
-import
org.apache.shardingsphere.proxy.backend.handler.distsql.ral.UpdatableRALUpdaterBackendHandler;
+import
org.apache.shardingsphere.proxy.backend.handler.distsql.ral.UpdatableRALBackendHandler;
import org.apache.shardingsphere.proxy.backend.response.header.ResponseHeader;
import
org.apache.shardingsphere.proxy.backend.response.header.update.UpdateResponseHeader;
import org.apache.shardingsphere.proxy.backend.session.ConnectionSession;
@@ -46,7 +46,7 @@ public final class RefreshTableMetaDataUpdaterTest {
@Test(expected = NoDatabaseSelectedException.class)
public void assertNoDatabaseSelected() throws SQLException {
- UpdatableRALUpdaterBackendHandler backendHandler = new
UpdatableRALUpdaterBackendHandler(new RefreshTableMetaDataStatement(),
mock(ConnectionSession.class));
+ UpdatableRALBackendHandler backendHandler = new
UpdatableRALBackendHandler(new RefreshTableMetaDataStatement(),
mock(ConnectionSession.class));
try (MockedStatic<ProxyContext> proxyContext =
mockStatic(ProxyContext.class, RETURNS_DEEP_STUBS)) {
proxyContext.when(() ->
ProxyContext.getInstance().getContextManager()).thenReturn(mock(ContextManager.class,
RETURNS_DEEP_STUBS));
backendHandler.execute();
@@ -55,7 +55,7 @@ public final class RefreshTableMetaDataUpdaterTest {
@Test(expected = UnknownDatabaseException.class)
public void assertUnknownDatabaseException() throws SQLException {
- UpdatableRALUpdaterBackendHandler backendHandler = new
UpdatableRALUpdaterBackendHandler(new RefreshTableMetaDataStatement(),
mockConnectionSession("not_existed_db"));
+ UpdatableRALBackendHandler backendHandler = new
UpdatableRALBackendHandler(new RefreshTableMetaDataStatement(),
mockConnectionSession("not_existed_db"));
try (MockedStatic<ProxyContext> proxyContext =
mockStatic(ProxyContext.class, RETURNS_DEEP_STUBS)) {
proxyContext.when(() ->
ProxyContext.getInstance().getContextManager()).thenReturn(mock(ContextManager.class,
RETURNS_DEEP_STUBS));
backendHandler.execute();
@@ -64,7 +64,7 @@ public final class RefreshTableMetaDataUpdaterTest {
@Test(expected = EmptyStorageUnitException.class)
public void assertEmptyResource() throws SQLException {
- UpdatableRALUpdaterBackendHandler backendHandler = new
UpdatableRALUpdaterBackendHandler(new RefreshTableMetaDataStatement(),
mockConnectionSession("sharding_db"));
+ UpdatableRALBackendHandler backendHandler = new
UpdatableRALBackendHandler(new RefreshTableMetaDataStatement(),
mockConnectionSession("sharding_db"));
ContextManager contextManager = mock(ContextManager.class,
RETURNS_DEEP_STUBS);
when(contextManager.getDataSourceMap("sharding_db")).thenReturn(Collections.emptyMap());
try (MockedStatic<ProxyContext> proxyContext =
mockStatic(ProxyContext.class, RETURNS_DEEP_STUBS)) {
@@ -76,7 +76,7 @@ public final class RefreshTableMetaDataUpdaterTest {
@Test(expected = MissingRequiredStorageUnitsException.class)
public void assertMissingRequiredResources() throws SQLException {
- UpdatableRALUpdaterBackendHandler backendHandler = new
UpdatableRALUpdaterBackendHandler(new RefreshTableMetaDataStatement("t_order",
"ds_1", null), mockConnectionSession("sharding_db"));
+ UpdatableRALBackendHandler backendHandler = new
UpdatableRALBackendHandler(new RefreshTableMetaDataStatement("t_order", "ds_1",
null), mockConnectionSession("sharding_db"));
ContextManager contextManager = mock(ContextManager.class,
RETURNS_DEEP_STUBS);
when(contextManager.getDataSourceMap("sharding_db")).thenReturn(Collections.singletonMap("ds_0",
new MockedDataSource()));
try (MockedStatic<ProxyContext> proxyContext =
mockStatic(ProxyContext.class, RETURNS_DEEP_STUBS)) {
@@ -88,7 +88,7 @@ public final class RefreshTableMetaDataUpdaterTest {
@Test
public void assertUpdate() throws SQLException {
- UpdatableRALUpdaterBackendHandler backendHandler = new
UpdatableRALUpdaterBackendHandler(new RefreshTableMetaDataStatement(),
mockConnectionSession("sharding_db"));
+ UpdatableRALBackendHandler backendHandler = new
UpdatableRALBackendHandler(new RefreshTableMetaDataStatement(),
mockConnectionSession("sharding_db"));
ContextManager contextManager = mock(ContextManager.class,
RETURNS_DEEP_STUBS);
when(contextManager.getDataSourceMap("sharding_db")).thenReturn(Collections.singletonMap("ds_0",
new MockedDataSource()));
try (MockedStatic<ProxyContext> proxyContext =
mockStatic(ProxyContext.class, RETURNS_DEEP_STUBS)) {
diff --git
a/proxy/backend/core/src/test/java/org/apache/shardingsphere/proxy/backend/handler/distsql/ral/updatable/SetDistVariableUpdatableRALUpdaterBackendHandlerTest.java
b/proxy/backend/core/src/test/java/org/apache/shardingsphere/proxy/backend/handler/distsql/ral/updatable/SetDistVariableUpdatableRALBackendHandlerTest.java
similarity index 77%
rename from
proxy/backend/core/src/test/java/org/apache/shardingsphere/proxy/backend/handler/distsql/ral/updatable/SetDistVariableUpdatableRALUpdaterBackendHandlerTest.java
rename to
proxy/backend/core/src/test/java/org/apache/shardingsphere/proxy/backend/handler/distsql/ral/updatable/SetDistVariableUpdatableRALBackendHandlerTest.java
index 741454b1b5c..12f4177a763 100644
---
a/proxy/backend/core/src/test/java/org/apache/shardingsphere/proxy/backend/handler/distsql/ral/updatable/SetDistVariableUpdatableRALUpdaterBackendHandlerTest.java
+++
b/proxy/backend/core/src/test/java/org/apache/shardingsphere/proxy/backend/handler/distsql/ral/updatable/SetDistVariableUpdatableRALBackendHandlerTest.java
@@ -21,7 +21,7 @@ import io.netty.util.DefaultAttributeMap;
import
org.apache.shardingsphere.distsql.parser.statement.ral.updatable.SetDistVariableStatement;
import org.apache.shardingsphere.infra.database.type.dialect.MySQLDatabaseType;
import
org.apache.shardingsphere.proxy.backend.exception.UnsupportedVariableException;
-import
org.apache.shardingsphere.proxy.backend.handler.distsql.ral.UpdatableRALUpdaterBackendHandler;
+import
org.apache.shardingsphere.proxy.backend.handler.distsql.ral.UpdatableRALBackendHandler;
import
org.apache.shardingsphere.proxy.backend.handler.distsql.ral.common.enums.VariableEnum;
import org.apache.shardingsphere.proxy.backend.response.header.ResponseHeader;
import
org.apache.shardingsphere.proxy.backend.response.header.update.UpdateResponseHeader;
@@ -38,7 +38,7 @@ import static org.hamcrest.CoreMatchers.is;
import static org.hamcrest.MatcherAssert.assertThat;
import static org.mockito.Mockito.mock;
-public final class SetDistVariableUpdatableRALUpdaterBackendHandlerTest {
+public final class SetDistVariableUpdatableRALBackendHandlerTest {
private static final String DATABASE_PATTERN = "db_%s";
@@ -52,7 +52,7 @@ public final class
SetDistVariableUpdatableRALUpdaterBackendHandlerTest {
@Test
public void assertSwitchTransactionTypeXA() throws SQLException {
connectionSession.setCurrentDatabase(String.format(DATABASE_PATTERN,
0));
- UpdatableRALUpdaterBackendHandler<?> handler = new
UpdatableRALUpdaterBackendHandler<>(new
SetDistVariableStatement("transaction_type", "XA"), connectionSession);
+ UpdatableRALBackendHandler<?> handler = new
UpdatableRALBackendHandler<>(new SetDistVariableStatement("transaction_type",
"XA"), connectionSession);
ResponseHeader actual = handler.execute();
assertThat(actual, instanceOf(UpdateResponseHeader.class));
assertThat(connectionSession.getTransactionStatus().getTransactionType(),
is(TransactionType.XA));
@@ -61,7 +61,7 @@ public final class
SetDistVariableUpdatableRALUpdaterBackendHandlerTest {
@Test
public void assertSwitchTransactionTypeBASE() throws SQLException {
connectionSession.setCurrentDatabase(String.format(DATABASE_PATTERN,
0));
- UpdatableRALUpdaterBackendHandler<?> handler = new
UpdatableRALUpdaterBackendHandler<>(new
SetDistVariableStatement("transaction_type", "BASE"), connectionSession);
+ UpdatableRALBackendHandler<?> handler = new
UpdatableRALBackendHandler<>(new SetDistVariableStatement("transaction_type",
"BASE"), connectionSession);
ResponseHeader actual = handler.execute();
assertThat(actual, instanceOf(UpdateResponseHeader.class));
assertThat(connectionSession.getTransactionStatus().getTransactionType(),
is(TransactionType.BASE));
@@ -70,7 +70,7 @@ public final class
SetDistVariableUpdatableRALUpdaterBackendHandlerTest {
@Test
public void assertSwitchTransactionTypeLOCAL() throws SQLException {
connectionSession.setCurrentDatabase(String.format(DATABASE_PATTERN,
0));
- UpdatableRALUpdaterBackendHandler<?> handler = new
UpdatableRALUpdaterBackendHandler<>(new
SetDistVariableStatement("transaction_type", "LOCAL"), connectionSession);
+ UpdatableRALBackendHandler<?> handler = new
UpdatableRALBackendHandler<>(new SetDistVariableStatement("transaction_type",
"LOCAL"), connectionSession);
ResponseHeader actual = handler.execute();
assertThat(actual, instanceOf(UpdateResponseHeader.class));
assertThat(connectionSession.getTransactionStatus().getTransactionType(),
is(TransactionType.LOCAL));
@@ -79,20 +79,20 @@ public final class
SetDistVariableUpdatableRALUpdaterBackendHandlerTest {
@Test(expected = UnsupportedVariableException.class)
public void assertSwitchTransactionTypeFailed() throws SQLException {
connectionSession.setCurrentDatabase(String.format(DATABASE_PATTERN,
0));
- UpdatableRALUpdaterBackendHandler<?> handler = new
UpdatableRALUpdaterBackendHandler<>(new
SetDistVariableStatement("transaction_type", "XXX"), connectionSession);
+ UpdatableRALBackendHandler<?> handler = new
UpdatableRALBackendHandler<>(new SetDistVariableStatement("transaction_type",
"XXX"), connectionSession);
handler.execute();
}
@Test(expected = UnsupportedVariableException.class)
public void assertNotSupportedVariable() throws SQLException {
- UpdatableRALUpdaterBackendHandler<?> handler = new
UpdatableRALUpdaterBackendHandler<>(new SetDistVariableStatement("@@session",
"XXX"), connectionSession);
+ UpdatableRALBackendHandler<?> handler = new
UpdatableRALBackendHandler<>(new SetDistVariableStatement("@@session", "XXX"),
connectionSession);
handler.execute();
}
@Test
public void assertSetAgentPluginsEnabledTrue() throws SQLException {
connectionSession.setCurrentDatabase(String.format(DATABASE_PATTERN,
0));
- UpdatableRALUpdaterBackendHandler<?> handler = new
UpdatableRALUpdaterBackendHandler<>(new
SetDistVariableStatement(VariableEnum.AGENT_PLUGINS_ENABLED.name(),
Boolean.TRUE.toString()), null);
+ UpdatableRALBackendHandler<?> handler = new
UpdatableRALBackendHandler<>(new
SetDistVariableStatement(VariableEnum.AGENT_PLUGINS_ENABLED.name(),
Boolean.TRUE.toString()), null);
ResponseHeader actual = handler.execute();
assertThat(actual, instanceOf(UpdateResponseHeader.class));
assertThat(SystemPropertyUtil.getSystemProperty(VariableEnum.AGENT_PLUGINS_ENABLED.name(),
Boolean.FALSE.toString()), is(Boolean.TRUE.toString()));
@@ -101,7 +101,7 @@ public final class
SetDistVariableUpdatableRALUpdaterBackendHandlerTest {
@Test
public void assertSetAgentPluginsEnabledFalse() throws SQLException {
connectionSession.setCurrentDatabase(String.format(DATABASE_PATTERN,
0));
- UpdatableRALUpdaterBackendHandler<?> handler = new
UpdatableRALUpdaterBackendHandler<>(new
SetDistVariableStatement(VariableEnum.AGENT_PLUGINS_ENABLED.name(),
Boolean.FALSE.toString()), null);
+ UpdatableRALBackendHandler<?> handler = new
UpdatableRALBackendHandler<>(new
SetDistVariableStatement(VariableEnum.AGENT_PLUGINS_ENABLED.name(),
Boolean.FALSE.toString()), null);
ResponseHeader actual = handler.execute();
assertThat(actual, instanceOf(UpdateResponseHeader.class));
assertThat(SystemPropertyUtil.getSystemProperty(VariableEnum.AGENT_PLUGINS_ENABLED.name(),
Boolean.FALSE.toString()), is(Boolean.FALSE.toString()));
@@ -110,7 +110,7 @@ public final class
SetDistVariableUpdatableRALUpdaterBackendHandlerTest {
@Test
public void assertSetAgentPluginsEnabledFalseWithUnknownValue() throws
SQLException {
connectionSession.setCurrentDatabase(String.format(DATABASE_PATTERN,
0));
- UpdatableRALUpdaterBackendHandler<?> handler = new
UpdatableRALUpdaterBackendHandler<>(new
SetDistVariableStatement(VariableEnum.AGENT_PLUGINS_ENABLED.name(), "xxx"),
connectionSession);
+ UpdatableRALBackendHandler<?> handler = new
UpdatableRALBackendHandler<>(new
SetDistVariableStatement(VariableEnum.AGENT_PLUGINS_ENABLED.name(), "xxx"),
connectionSession);
ResponseHeader actual = handler.execute();
assertThat(actual, instanceOf(UpdateResponseHeader.class));
assertThat(SystemPropertyUtil.getSystemProperty(VariableEnum.AGENT_PLUGINS_ENABLED.name(),
Boolean.FALSE.toString()), is(Boolean.FALSE.toString()));