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 2022/11/01 10:28:38 UTC

[shardingsphere] branch master updated: Revised #11838, remove usage of `EmptyStatement` in hint executor. (#21881)

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 d28887990f7 Revised #11838, remove usage of `EmptyStatement` in hint executor. (#21881)
d28887990f7 is described below

commit d28887990f715d20b3f2531c9f07560241a7d0af
Author: Raigor <ra...@gmail.com>
AuthorDate: Tue Nov 1 18:28:32 2022 +0800

    Revised #11838, remove usage of `EmptyStatement` in hint executor. (#21881)
---
 .../handler/distsql/ral/hint/HintRALStatementExecutorFactory.java  | 6 +++---
 .../ral/hint/executor/AddShardingHintDatabaseValueExecutor.java    | 5 ++---
 .../ral/hint/executor/AddShardingHintTableValueExecutor.java       | 5 ++---
 .../handler/distsql/ral/hint/executor/ClearHintExecutor.java       | 7 ++++---
 .../ral/hint/executor/ClearReadwriteSplittingHintExecutor.java     | 7 ++++---
 .../distsql/ral/hint/executor/ClearShardingHintExecutor.java       | 7 ++++---
 .../ral/hint/executor/SetReadwriteSplittingHintExecutor.java       | 7 +++----
 .../ral/hint/executor/SetShardingHintDatabaseValueExecutor.java    | 5 ++---
 8 files changed, 24 insertions(+), 25 deletions(-)

diff --git a/proxy/backend/src/main/java/org/apache/shardingsphere/proxy/backend/handler/distsql/ral/hint/HintRALStatementExecutorFactory.java b/proxy/backend/src/main/java/org/apache/shardingsphere/proxy/backend/handler/distsql/ral/hint/HintRALStatementExecutorFactory.java
index 929fbaaabf9..b3d9f0c2ca3 100644
--- a/proxy/backend/src/main/java/org/apache/shardingsphere/proxy/backend/handler/distsql/ral/hint/HintRALStatementExecutorFactory.java
+++ b/proxy/backend/src/main/java/org/apache/shardingsphere/proxy/backend/handler/distsql/ral/hint/HintRALStatementExecutorFactory.java
@@ -62,10 +62,10 @@ public final class HintRALStatementExecutorFactory {
             return new ShowReadwriteSplittingHintStatusExecutor();
         }
         if (sqlStatement instanceof ClearReadwriteSplittingHintStatement) {
-            return new ClearReadwriteSplittingHintExecutor();
+            return new ClearReadwriteSplittingHintExecutor((ClearReadwriteSplittingHintStatement) sqlStatement);
         }
         if (sqlStatement instanceof ClearHintStatement) {
-            return new ClearHintExecutor();
+            return new ClearHintExecutor((ClearHintStatement) sqlStatement);
         }
         if (sqlStatement instanceof SetShardingHintDatabaseValueStatement) {
             return new SetShardingHintDatabaseValueExecutor((SetShardingHintDatabaseValueStatement) sqlStatement);
@@ -80,7 +80,7 @@ public final class HintRALStatementExecutorFactory {
             return new ShowShardingHintStatusExecutor(connectionSession);
         }
         if (sqlStatement instanceof ClearShardingHintStatement) {
-            return new ClearShardingHintExecutor();
+            return new ClearShardingHintExecutor((ClearShardingHintStatement) sqlStatement);
         }
         throw new UnsupportedSQLOperationException(sqlStatement.getClass().getCanonicalName());
     }
diff --git a/proxy/backend/src/main/java/org/apache/shardingsphere/proxy/backend/handler/distsql/ral/hint/executor/AddShardingHintDatabaseValueExecutor.java b/proxy/backend/src/main/java/org/apache/shardingsphere/proxy/backend/handler/distsql/ral/hint/executor/AddShardingHintDatabaseValueExecutor.java
index 14ad13f330d..1b2b86b37fe 100644
--- a/proxy/backend/src/main/java/org/apache/shardingsphere/proxy/backend/handler/distsql/ral/hint/executor/AddShardingHintDatabaseValueExecutor.java
+++ b/proxy/backend/src/main/java/org/apache/shardingsphere/proxy/backend/handler/distsql/ral/hint/executor/AddShardingHintDatabaseValueExecutor.java
@@ -18,11 +18,10 @@
 package org.apache.shardingsphere.proxy.backend.handler.distsql.ral.hint.executor;
 
 import lombok.RequiredArgsConstructor;
+import org.apache.shardingsphere.proxy.backend.handler.distsql.ral.hint.HintManagerHolder;
 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.handler.distsql.ral.hint.HintManagerHolder;
 import org.apache.shardingsphere.sharding.distsql.parser.statement.hint.AddShardingHintDatabaseValueStatement;
-import org.apache.shardingsphere.sql.parser.sql.common.statement.dal.EmptyStatement;
 
 /**
  * Add sharding hint database value executor.
@@ -35,6 +34,6 @@ public final class AddShardingHintDatabaseValueExecutor extends AbstractHintUpda
     @Override
     public ResponseHeader execute() {
         HintManagerHolder.get().addDatabaseShardingValue(sqlStatement.getLogicTableName(), sqlStatement.getShardingValue());
-        return new UpdateResponseHeader(new EmptyStatement());
+        return new UpdateResponseHeader(sqlStatement);
     }
 }
diff --git a/proxy/backend/src/main/java/org/apache/shardingsphere/proxy/backend/handler/distsql/ral/hint/executor/AddShardingHintTableValueExecutor.java b/proxy/backend/src/main/java/org/apache/shardingsphere/proxy/backend/handler/distsql/ral/hint/executor/AddShardingHintTableValueExecutor.java
index e0762b1dccb..a70179f245e 100644
--- a/proxy/backend/src/main/java/org/apache/shardingsphere/proxy/backend/handler/distsql/ral/hint/executor/AddShardingHintTableValueExecutor.java
+++ b/proxy/backend/src/main/java/org/apache/shardingsphere/proxy/backend/handler/distsql/ral/hint/executor/AddShardingHintTableValueExecutor.java
@@ -18,11 +18,10 @@
 package org.apache.shardingsphere.proxy.backend.handler.distsql.ral.hint.executor;
 
 import lombok.RequiredArgsConstructor;
+import org.apache.shardingsphere.proxy.backend.handler.distsql.ral.hint.HintManagerHolder;
 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.handler.distsql.ral.hint.HintManagerHolder;
 import org.apache.shardingsphere.sharding.distsql.parser.statement.hint.AddShardingHintTableValueStatement;
-import org.apache.shardingsphere.sql.parser.sql.common.statement.dal.EmptyStatement;
 
 /**
  * Add sharding hint table value executor.
@@ -35,6 +34,6 @@ public final class AddShardingHintTableValueExecutor extends AbstractHintUpdateE
     @Override
     public ResponseHeader execute() {
         HintManagerHolder.get().addTableShardingValue(sqlStatement.getLogicTableName(), sqlStatement.getShardingValue());
-        return new UpdateResponseHeader(new EmptyStatement());
+        return new UpdateResponseHeader(sqlStatement);
     }
 }
diff --git a/proxy/backend/src/main/java/org/apache/shardingsphere/proxy/backend/handler/distsql/ral/hint/executor/ClearHintExecutor.java b/proxy/backend/src/main/java/org/apache/shardingsphere/proxy/backend/handler/distsql/ral/hint/executor/ClearHintExecutor.java
index e7f7757b8f3..e494489b902 100644
--- a/proxy/backend/src/main/java/org/apache/shardingsphere/proxy/backend/handler/distsql/ral/hint/executor/ClearHintExecutor.java
+++ b/proxy/backend/src/main/java/org/apache/shardingsphere/proxy/backend/handler/distsql/ral/hint/executor/ClearHintExecutor.java
@@ -19,10 +19,9 @@ package org.apache.shardingsphere.proxy.backend.handler.distsql.ral.hint.executo
 
 import lombok.RequiredArgsConstructor;
 import org.apache.shardingsphere.distsql.parser.statement.ral.hint.ClearHintStatement;
+import org.apache.shardingsphere.proxy.backend.handler.distsql.ral.hint.HintManagerHolder;
 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.handler.distsql.ral.hint.HintManagerHolder;
-import org.apache.shardingsphere.sql.parser.sql.common.statement.dal.EmptyStatement;
 
 /**
  * Clear hint statement executor.
@@ -30,10 +29,12 @@ import org.apache.shardingsphere.sql.parser.sql.common.statement.dal.EmptyStatem
 @RequiredArgsConstructor
 public final class ClearHintExecutor extends AbstractHintUpdateExecutor<ClearHintStatement> {
     
+    private final ClearHintStatement sqlStatement;
+    
     @Override
     public ResponseHeader execute() {
         HintManagerHolder.get().close();
         HintManagerHolder.remove();
-        return new UpdateResponseHeader(new EmptyStatement());
+        return new UpdateResponseHeader(sqlStatement);
     }
 }
diff --git a/proxy/backend/src/main/java/org/apache/shardingsphere/proxy/backend/handler/distsql/ral/hint/executor/ClearReadwriteSplittingHintExecutor.java b/proxy/backend/src/main/java/org/apache/shardingsphere/proxy/backend/handler/distsql/ral/hint/executor/ClearReadwriteSplittingHintExecutor.java
index a5b09296d0d..f0a28a0cfa8 100644
--- a/proxy/backend/src/main/java/org/apache/shardingsphere/proxy/backend/handler/distsql/ral/hint/executor/ClearReadwriteSplittingHintExecutor.java
+++ b/proxy/backend/src/main/java/org/apache/shardingsphere/proxy/backend/handler/distsql/ral/hint/executor/ClearReadwriteSplittingHintExecutor.java
@@ -18,11 +18,10 @@
 package org.apache.shardingsphere.proxy.backend.handler.distsql.ral.hint.executor;
 
 import lombok.RequiredArgsConstructor;
+import org.apache.shardingsphere.proxy.backend.handler.distsql.ral.hint.HintManagerHolder;
 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.handler.distsql.ral.hint.HintManagerHolder;
 import org.apache.shardingsphere.readwritesplitting.distsql.parser.statement.hint.ClearReadwriteSplittingHintStatement;
-import org.apache.shardingsphere.sql.parser.sql.common.statement.dal.EmptyStatement;
 
 /**
  * Clear readwrite-splitting hint executor.
@@ -30,9 +29,11 @@ import org.apache.shardingsphere.sql.parser.sql.common.statement.dal.EmptyStatem
 @RequiredArgsConstructor
 public final class ClearReadwriteSplittingHintExecutor extends AbstractHintUpdateExecutor<ClearReadwriteSplittingHintStatement> {
     
+    private final ClearReadwriteSplittingHintStatement sqlStatement;
+    
     @Override
     public ResponseHeader execute() {
         HintManagerHolder.get().setReadwriteSplittingAuto();
-        return new UpdateResponseHeader(new EmptyStatement());
+        return new UpdateResponseHeader(sqlStatement);
     }
 }
diff --git a/proxy/backend/src/main/java/org/apache/shardingsphere/proxy/backend/handler/distsql/ral/hint/executor/ClearShardingHintExecutor.java b/proxy/backend/src/main/java/org/apache/shardingsphere/proxy/backend/handler/distsql/ral/hint/executor/ClearShardingHintExecutor.java
index 63a37212072..2eb055af4f6 100644
--- a/proxy/backend/src/main/java/org/apache/shardingsphere/proxy/backend/handler/distsql/ral/hint/executor/ClearShardingHintExecutor.java
+++ b/proxy/backend/src/main/java/org/apache/shardingsphere/proxy/backend/handler/distsql/ral/hint/executor/ClearShardingHintExecutor.java
@@ -18,11 +18,10 @@
 package org.apache.shardingsphere.proxy.backend.handler.distsql.ral.hint.executor;
 
 import lombok.RequiredArgsConstructor;
+import org.apache.shardingsphere.proxy.backend.handler.distsql.ral.hint.HintManagerHolder;
 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.handler.distsql.ral.hint.HintManagerHolder;
 import org.apache.shardingsphere.sharding.distsql.parser.statement.hint.ClearShardingHintStatement;
-import org.apache.shardingsphere.sql.parser.sql.common.statement.dal.EmptyStatement;
 
 /**
  * Clear sharding hint executor.
@@ -30,9 +29,11 @@ import org.apache.shardingsphere.sql.parser.sql.common.statement.dal.EmptyStatem
 @RequiredArgsConstructor
 public final class ClearShardingHintExecutor extends AbstractHintUpdateExecutor<ClearShardingHintStatement> {
     
+    private final ClearShardingHintStatement sqlStatement;
+    
     @Override
     public ResponseHeader execute() {
         HintManagerHolder.get().clearShardingValues();
-        return new UpdateResponseHeader(new EmptyStatement());
+        return new UpdateResponseHeader(sqlStatement);
     }
 }
diff --git a/proxy/backend/src/main/java/org/apache/shardingsphere/proxy/backend/handler/distsql/ral/hint/executor/SetReadwriteSplittingHintExecutor.java b/proxy/backend/src/main/java/org/apache/shardingsphere/proxy/backend/handler/distsql/ral/hint/executor/SetReadwriteSplittingHintExecutor.java
index d90d9e6b41c..e33df38c09c 100644
--- a/proxy/backend/src/main/java/org/apache/shardingsphere/proxy/backend/handler/distsql/ral/hint/executor/SetReadwriteSplittingHintExecutor.java
+++ b/proxy/backend/src/main/java/org/apache/shardingsphere/proxy/backend/handler/distsql/ral/hint/executor/SetReadwriteSplittingHintExecutor.java
@@ -18,12 +18,11 @@
 package org.apache.shardingsphere.proxy.backend.handler.distsql.ral.hint.executor;
 
 import lombok.RequiredArgsConstructor;
+import org.apache.shardingsphere.proxy.backend.handler.distsql.ral.hint.HintManagerHolder;
+import org.apache.shardingsphere.proxy.backend.handler.distsql.ral.hint.enums.HintSourceType;
 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.handler.distsql.ral.hint.enums.HintSourceType;
-import org.apache.shardingsphere.proxy.backend.handler.distsql.ral.hint.HintManagerHolder;
 import org.apache.shardingsphere.readwritesplitting.distsql.parser.statement.hint.SetReadwriteSplittingHintStatement;
-import org.apache.shardingsphere.sql.parser.sql.common.statement.dal.EmptyStatement;
 
 /**
  * Set readwrite-splitting hint statement executor.
@@ -46,6 +45,6 @@ public final class SetReadwriteSplittingHintExecutor extends AbstractHintUpdateE
             default:
                 break;
         }
-        return new UpdateResponseHeader(new EmptyStatement());
+        return new UpdateResponseHeader(sqlStatement);
     }
 }
diff --git a/proxy/backend/src/main/java/org/apache/shardingsphere/proxy/backend/handler/distsql/ral/hint/executor/SetShardingHintDatabaseValueExecutor.java b/proxy/backend/src/main/java/org/apache/shardingsphere/proxy/backend/handler/distsql/ral/hint/executor/SetShardingHintDatabaseValueExecutor.java
index 0b3c5d74cd5..ac7c32d6179 100644
--- a/proxy/backend/src/main/java/org/apache/shardingsphere/proxy/backend/handler/distsql/ral/hint/executor/SetShardingHintDatabaseValueExecutor.java
+++ b/proxy/backend/src/main/java/org/apache/shardingsphere/proxy/backend/handler/distsql/ral/hint/executor/SetShardingHintDatabaseValueExecutor.java
@@ -18,11 +18,10 @@
 package org.apache.shardingsphere.proxy.backend.handler.distsql.ral.hint.executor;
 
 import lombok.RequiredArgsConstructor;
+import org.apache.shardingsphere.proxy.backend.handler.distsql.ral.hint.HintManagerHolder;
 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.handler.distsql.ral.hint.HintManagerHolder;
 import org.apache.shardingsphere.sharding.distsql.parser.statement.hint.SetShardingHintDatabaseValueStatement;
-import org.apache.shardingsphere.sql.parser.sql.common.statement.dal.EmptyStatement;
 
 /**
  * Set sharding hint database value executor.
@@ -35,6 +34,6 @@ public final class SetShardingHintDatabaseValueExecutor extends AbstractHintUpda
     @Override
     public ResponseHeader execute() {
         HintManagerHolder.get().setDatabaseShardingValue(sqlStatement.getShardingValue());
-        return new UpdateResponseHeader(new EmptyStatement());
+        return new UpdateResponseHeader(sqlStatement);
     }
 }