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

xiaoyu 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 7e79846   Adjust Directory for query optimization (#8875)
7e79846 is described below

commit 7e79846622ad623b91200d97644ca3e4968bdede
Author: Juan Pan(Trista) <[email protected]>
AuthorDate: Mon Jan 4 17:02:40 2021 +0800

     Adjust Directory for query optimization (#8875)
    
    * Adjust Directory for query optimization
    
    * Adjust Directory for query optimization
---
 .../infra/optimize/context/CalciteContext.java          |  1 -
 .../infra/optimize/context/CalciteContextFactory.java   | 17 +++++------------
 .../optimize/execute/{ => raw}/CalciteRawExecutor.java  |  5 +++--
 .../{ => execute/raw}/context/CalciteDataContext.java   |  3 ++-
 .../{ => execute/raw}/convert/SqlNodeConverter.java     |  2 +-
 .../{ => execute/raw}/plan/PlannerInitializer.java      |  2 +-
 .../optimize/schema/CalciteLogicSchemaFactory.java      |  9 ++++-----
 .../{ => generator}/CalciteLogicSchemaGenerator.java    |  8 ++++----
 .../{ => generator}/CalciteLogicTableGenerator.java     |  7 ++++---
 .../optimize/schema/{ => row}/CalciteRowEnumerator.java |  2 +-
 .../row/CalciteRowExecutor.java}                        |  4 ++--
 .../schema/{ => table}/AbstractCalciteTable.java        |  6 +++---
 .../schema/{ => table}/CalciteFilterableTable.java      |  7 ++++---
 .../core/statement/ShardingSpherePreparedStatement.java |  4 ++--
 .../jdbc/core/statement/ShardingSphereStatement.java    |  4 ++--
 .../proxy/backend/communication/ProxySQLExecutor.java   |  4 ++--
 16 files changed, 40 insertions(+), 45 deletions(-)

diff --git 
a/shardingsphere-infra/shardingsphere-infra-optimize/src/main/java/org/apache/shardingsphere/infra/optimize/context/CalciteContext.java
 
b/shardingsphere-infra/shardingsphere-infra-optimize/src/main/java/org/apache/shardingsphere/infra/optimize/context/CalciteContext.java
index c47cd29..8ee4298 100644
--- 
a/shardingsphere-infra/shardingsphere-infra-optimize/src/main/java/org/apache/shardingsphere/infra/optimize/context/CalciteContext.java
+++ 
b/shardingsphere-infra/shardingsphere-infra-optimize/src/main/java/org/apache/shardingsphere/infra/optimize/context/CalciteContext.java
@@ -28,7 +28,6 @@ import java.util.Properties;
 
 /**
  * Calcite context.
- *
  */
 @Getter
 @RequiredArgsConstructor
diff --git 
a/shardingsphere-infra/shardingsphere-infra-optimize/src/main/java/org/apache/shardingsphere/infra/optimize/context/CalciteContextFactory.java
 
b/shardingsphere-infra/shardingsphere-infra-optimize/src/main/java/org/apache/shardingsphere/infra/optimize/context/CalciteContextFactory.java
index 9b6b481..cd45e84 100644
--- 
a/shardingsphere-infra/shardingsphere-infra-optimize/src/main/java/org/apache/shardingsphere/infra/optimize/context/CalciteContextFactory.java
+++ 
b/shardingsphere-infra/shardingsphere-infra-optimize/src/main/java/org/apache/shardingsphere/infra/optimize/context/CalciteContextFactory.java
@@ -39,21 +39,18 @@ import org.apache.calcite.sql.validate.SqlValidator;
 import org.apache.calcite.sql.validate.SqlValidatorUtil;
 import org.apache.calcite.sql2rel.SqlToRelConverter;
 import org.apache.calcite.sql2rel.StandardConvertletTable;
-import org.apache.shardingsphere.infra.exception.ShardingSphereException;
 import org.apache.shardingsphere.infra.metadata.ShardingSphereMetaData;
-import 
org.apache.shardingsphere.infra.optimize.execute.CalciteInternalExecutor;
-import org.apache.shardingsphere.infra.optimize.plan.PlannerInitializer;
+import 
org.apache.shardingsphere.infra.optimize.execute.raw.plan.PlannerInitializer;
 import org.apache.shardingsphere.infra.optimize.schema.CalciteLogicSchema;
 import 
org.apache.shardingsphere.infra.optimize.schema.CalciteLogicSchemaFactory;
+import org.apache.shardingsphere.infra.optimize.schema.row.CalciteRowExecutor;
 
-import java.sql.SQLException;
 import java.util.Collections;
 import java.util.Map;
 import java.util.Properties;
 
 /**
- * Calcite context.
- *
+ * Calcite context factory.
  */
 public final class CalciteContextFactory {
 
@@ -103,12 +100,8 @@ public final class CalciteContextFactory {
      * @param executor executor
      * @return calcite context
      */
-    public CalciteContext create(final String schema, final 
CalciteInternalExecutor executor) {
-        try {
-            return create(connectionConfig, parserConfig, typeFactory, 
cluster, factory.create(schema, executor));
-        } catch (final SQLException ex) {
-            throw new ShardingSphereException(ex);
-        }
+    public CalciteContext create(final String schema, final CalciteRowExecutor 
executor) {
+        return create(connectionConfig, parserConfig, typeFactory, cluster, 
factory.create(schema, executor));
     }
 
     private CalciteContext create(final CalciteConnectionConfig config,
diff --git 
a/shardingsphere-infra/shardingsphere-infra-optimize/src/main/java/org/apache/shardingsphere/infra/optimize/execute/CalciteRawExecutor.java
 
b/shardingsphere-infra/shardingsphere-infra-optimize/src/main/java/org/apache/shardingsphere/infra/optimize/execute/raw/CalciteRawExecutor.java
similarity index 94%
rename from 
shardingsphere-infra/shardingsphere-infra-optimize/src/main/java/org/apache/shardingsphere/infra/optimize/execute/CalciteRawExecutor.java
rename to 
shardingsphere-infra/shardingsphere-infra-optimize/src/main/java/org/apache/shardingsphere/infra/optimize/execute/raw/CalciteRawExecutor.java
index 3b6fa78..44e9894 100644
--- 
a/shardingsphere-infra/shardingsphere-infra-optimize/src/main/java/org/apache/shardingsphere/infra/optimize/execute/CalciteRawExecutor.java
+++ 
b/shardingsphere-infra/shardingsphere-infra-optimize/src/main/java/org/apache/shardingsphere/infra/optimize/execute/raw/CalciteRawExecutor.java
@@ -15,7 +15,7 @@
  * limitations under the License.
  */
 
-package org.apache.shardingsphere.infra.optimize.execute;
+package org.apache.shardingsphere.infra.optimize.execute.raw;
 
 import lombok.RequiredArgsConstructor;
 import org.apache.calcite.adapter.enumerable.EnumerableConvention;
@@ -31,7 +31,8 @@ import org.apache.calcite.sql.parser.SqlParseException;
 import org.apache.calcite.sql.parser.SqlParser;
 import 
org.apache.shardingsphere.infra.executor.sql.execute.result.query.QueryResult;
 import org.apache.shardingsphere.infra.optimize.context.CalciteContext;
-import org.apache.shardingsphere.infra.optimize.context.CalciteDataContext;
+import org.apache.shardingsphere.infra.optimize.execute.CalciteExecutor;
+import 
org.apache.shardingsphere.infra.optimize.execute.raw.context.CalciteDataContext;
 
 import java.sql.SQLException;
 import java.util.Collections;
diff --git 
a/shardingsphere-infra/shardingsphere-infra-optimize/src/main/java/org/apache/shardingsphere/infra/optimize/context/CalciteDataContext.java
 
b/shardingsphere-infra/shardingsphere-infra-optimize/src/main/java/org/apache/shardingsphere/infra/optimize/execute/raw/context/CalciteDataContext.java
similarity index 92%
rename from 
shardingsphere-infra/shardingsphere-infra-optimize/src/main/java/org/apache/shardingsphere/infra/optimize/context/CalciteDataContext.java
rename to 
shardingsphere-infra/shardingsphere-infra-optimize/src/main/java/org/apache/shardingsphere/infra/optimize/execute/raw/context/CalciteDataContext.java
index e7839b2..0e49194 100644
--- 
a/shardingsphere-infra/shardingsphere-infra-optimize/src/main/java/org/apache/shardingsphere/infra/optimize/context/CalciteDataContext.java
+++ 
b/shardingsphere-infra/shardingsphere-infra-optimize/src/main/java/org/apache/shardingsphere/infra/optimize/execute/raw/context/CalciteDataContext.java
@@ -15,13 +15,14 @@
  * limitations under the License.
  */
 
-package org.apache.shardingsphere.infra.optimize.context;
+package org.apache.shardingsphere.infra.optimize.execute.raw.context;
 
 import lombok.RequiredArgsConstructor;
 import org.apache.calcite.DataContext;
 import org.apache.calcite.adapter.java.JavaTypeFactory;
 import org.apache.calcite.linq4j.QueryProvider;
 import org.apache.calcite.schema.SchemaPlus;
+import org.apache.shardingsphere.infra.optimize.context.CalciteContext;
 
 /**
  * Calcite data context.
diff --git 
a/shardingsphere-infra/shardingsphere-infra-optimize/src/main/java/org/apache/shardingsphere/infra/optimize/convert/SqlNodeConverter.java
 
b/shardingsphere-infra/shardingsphere-infra-optimize/src/main/java/org/apache/shardingsphere/infra/optimize/execute/raw/convert/SqlNodeConverter.java
similarity index 95%
rename from 
shardingsphere-infra/shardingsphere-infra-optimize/src/main/java/org/apache/shardingsphere/infra/optimize/convert/SqlNodeConverter.java
rename to 
shardingsphere-infra/shardingsphere-infra-optimize/src/main/java/org/apache/shardingsphere/infra/optimize/execute/raw/convert/SqlNodeConverter.java
index 2b32b4e..d77aead 100644
--- 
a/shardingsphere-infra/shardingsphere-infra-optimize/src/main/java/org/apache/shardingsphere/infra/optimize/convert/SqlNodeConverter.java
+++ 
b/shardingsphere-infra/shardingsphere-infra-optimize/src/main/java/org/apache/shardingsphere/infra/optimize/execute/raw/convert/SqlNodeConverter.java
@@ -15,7 +15,7 @@
  * limitations under the License.
  */
 
-package org.apache.shardingsphere.infra.optimize.convert;
+package org.apache.shardingsphere.infra.optimize.execute.raw.convert;
 
 import lombok.AccessLevel;
 import lombok.NoArgsConstructor;
diff --git 
a/shardingsphere-infra/shardingsphere-infra-optimize/src/main/java/org/apache/shardingsphere/infra/optimize/plan/PlannerInitializer.java
 
b/shardingsphere-infra/shardingsphere-infra-optimize/src/main/java/org/apache/shardingsphere/infra/optimize/execute/raw/plan/PlannerInitializer.java
similarity index 96%
rename from 
shardingsphere-infra/shardingsphere-infra-optimize/src/main/java/org/apache/shardingsphere/infra/optimize/plan/PlannerInitializer.java
rename to 
shardingsphere-infra/shardingsphere-infra-optimize/src/main/java/org/apache/shardingsphere/infra/optimize/execute/raw/plan/PlannerInitializer.java
index e4f943e..e9c5699 100644
--- 
a/shardingsphere-infra/shardingsphere-infra-optimize/src/main/java/org/apache/shardingsphere/infra/optimize/plan/PlannerInitializer.java
+++ 
b/shardingsphere-infra/shardingsphere-infra-optimize/src/main/java/org/apache/shardingsphere/infra/optimize/execute/raw/plan/PlannerInitializer.java
@@ -15,7 +15,7 @@
  * limitations under the License.
  */
 
-package org.apache.shardingsphere.infra.optimize.plan;
+package org.apache.shardingsphere.infra.optimize.execute.raw.plan;
 
 import lombok.AccessLevel;
 import lombok.NoArgsConstructor;
diff --git 
a/shardingsphere-infra/shardingsphere-infra-optimize/src/main/java/org/apache/shardingsphere/infra/optimize/schema/CalciteLogicSchemaFactory.java
 
b/shardingsphere-infra/shardingsphere-infra-optimize/src/main/java/org/apache/shardingsphere/infra/optimize/schema/CalciteLogicSchemaFactory.java
index 648b127..38f706e 100644
--- 
a/shardingsphere-infra/shardingsphere-infra-optimize/src/main/java/org/apache/shardingsphere/infra/optimize/schema/CalciteLogicSchemaFactory.java
+++ 
b/shardingsphere-infra/shardingsphere-infra-optimize/src/main/java/org/apache/shardingsphere/infra/optimize/schema/CalciteLogicSchemaFactory.java
@@ -20,7 +20,8 @@ package org.apache.shardingsphere.infra.optimize.schema;
 import org.apache.commons.collections4.map.LinkedMap;
 import org.apache.shardingsphere.infra.exception.ShardingSphereException;
 import org.apache.shardingsphere.infra.metadata.ShardingSphereMetaData;
-import 
org.apache.shardingsphere.infra.optimize.execute.CalciteInternalExecutor;
+import org.apache.shardingsphere.infra.optimize.schema.row.CalciteRowExecutor;
+import 
org.apache.shardingsphere.infra.optimize.schema.generator.CalciteLogicSchemaGenerator;
 
 import java.sql.SQLException;
 import java.util.Map;
@@ -28,8 +29,7 @@ import java.util.Map.Entry;
 
 
 /**
- * Calcite schema factory.
- *
+ * Calcite logic schema factory.
  */
 public final class CalciteLogicSchemaFactory {
     
@@ -51,9 +51,8 @@ public final class CalciteLogicSchemaFactory {
      * @param name name
      * @param executor executor
      * @return schema
-     * @exception SQLException sql exception
      */
-    public CalciteLogicSchema create(final String name, final 
CalciteInternalExecutor executor) throws SQLException {
+    public CalciteLogicSchema create(final String name, final 
CalciteRowExecutor executor) {
         if (!schemas.containsKey(name)) {
             throw new ShardingSphereException("No `%s` schema.", name);
         }
diff --git 
a/shardingsphere-infra/shardingsphere-infra-optimize/src/main/java/org/apache/shardingsphere/infra/optimize/schema/CalciteLogicSchemaGenerator.java
 
b/shardingsphere-infra/shardingsphere-infra-optimize/src/main/java/org/apache/shardingsphere/infra/optimize/schema/generator/CalciteLogicSchemaGenerator.java
similarity index 93%
rename from 
shardingsphere-infra/shardingsphere-infra-optimize/src/main/java/org/apache/shardingsphere/infra/optimize/schema/CalciteLogicSchemaGenerator.java
rename to 
shardingsphere-infra/shardingsphere-infra-optimize/src/main/java/org/apache/shardingsphere/infra/optimize/schema/generator/CalciteLogicSchemaGenerator.java
index cf85ccb..3752369 100644
--- 
a/shardingsphere-infra/shardingsphere-infra-optimize/src/main/java/org/apache/shardingsphere/infra/optimize/schema/CalciteLogicSchemaGenerator.java
+++ 
b/shardingsphere-infra/shardingsphere-infra-optimize/src/main/java/org/apache/shardingsphere/infra/optimize/schema/generator/CalciteLogicSchemaGenerator.java
@@ -15,13 +15,14 @@
  * limitations under the License.
  */
 
-package org.apache.shardingsphere.infra.optimize.schema;
+package org.apache.shardingsphere.infra.optimize.schema.generator;
 
 import org.apache.calcite.schema.Table;
 import org.apache.commons.collections4.map.LinkedMap;
 import org.apache.shardingsphere.infra.datanode.DataNode;
 import org.apache.shardingsphere.infra.metadata.ShardingSphereMetaData;
-import 
org.apache.shardingsphere.infra.optimize.execute.CalciteInternalExecutor;
+import org.apache.shardingsphere.infra.optimize.schema.row.CalciteRowExecutor;
+import org.apache.shardingsphere.infra.optimize.schema.CalciteLogicSchema;
 import org.apache.shardingsphere.infra.rule.ShardingSphereRule;
 import org.apache.shardingsphere.infra.rule.type.DataNodeContainedRule;
 import org.apache.shardingsphere.infra.rule.type.DataSourceContainedRule;
@@ -89,9 +90,8 @@ public final class CalciteLogicSchemaGenerator {
      *
      * @param executor executor
      * @return schema
-     * @exception SQLException sql exception
      */
-    public CalciteLogicSchema create(final CalciteInternalExecutor executor) 
throws SQLException {
+    public CalciteLogicSchema create(final CalciteRowExecutor executor) {
         Map<String, Table> tables = new LinkedMap<>();
         for (Entry<String, CalciteLogicTableGenerator> entry : 
this.tables.entrySet()) {
             tables.put(entry.getKey(), entry.getValue().create(executor));
diff --git 
a/shardingsphere-infra/shardingsphere-infra-optimize/src/main/java/org/apache/shardingsphere/infra/optimize/schema/CalciteLogicTableGenerator.java
 
b/shardingsphere-infra/shardingsphere-infra-optimize/src/main/java/org/apache/shardingsphere/infra/optimize/schema/generator/CalciteLogicTableGenerator.java
similarity index 93%
rename from 
shardingsphere-infra/shardingsphere-infra-optimize/src/main/java/org/apache/shardingsphere/infra/optimize/schema/CalciteLogicTableGenerator.java
rename to 
shardingsphere-infra/shardingsphere-infra-optimize/src/main/java/org/apache/shardingsphere/infra/optimize/schema/generator/CalciteLogicTableGenerator.java
index 51659f1..f447f04 100644
--- 
a/shardingsphere-infra/shardingsphere-infra-optimize/src/main/java/org/apache/shardingsphere/infra/optimize/schema/CalciteLogicTableGenerator.java
+++ 
b/shardingsphere-infra/shardingsphere-infra-optimize/src/main/java/org/apache/shardingsphere/infra/optimize/schema/generator/CalciteLogicTableGenerator.java
@@ -15,7 +15,7 @@
  * limitations under the License.
  */
 
-package org.apache.shardingsphere.infra.optimize.schema;
+package org.apache.shardingsphere.infra.optimize.schema.generator;
 
 import org.apache.calcite.rel.type.RelDataTypeFactory;
 import org.apache.calcite.rel.type.RelDataTypeImpl;
@@ -29,7 +29,8 @@ import org.apache.shardingsphere.infra.datanode.DataNode;
 import 
org.apache.shardingsphere.infra.metadata.schema.builder.loader.TableMetaDataLoader;
 import org.apache.shardingsphere.infra.metadata.schema.model.ColumnMetaData;
 import org.apache.shardingsphere.infra.metadata.schema.model.TableMetaData;
-import 
org.apache.shardingsphere.infra.optimize.execute.CalciteInternalExecutor;
+import org.apache.shardingsphere.infra.optimize.schema.row.CalciteRowExecutor;
+import 
org.apache.shardingsphere.infra.optimize.schema.table.CalciteFilterableTable;
 
 import javax.sql.DataSource;
 import java.sql.SQLException;
@@ -85,7 +86,7 @@ public final class CalciteLogicTableGenerator {
      * @param executor executor
      * @return table
      */
-    public Table create(final CalciteInternalExecutor executor) {
+    public Table create(final CalciteRowExecutor executor) {
         return new CalciteFilterableTable(tableMetaData, relProtoDataType, 
executor);
     }
 }
diff --git 
a/shardingsphere-infra/shardingsphere-infra-optimize/src/main/java/org/apache/shardingsphere/infra/optimize/schema/CalciteRowEnumerator.java
 
b/shardingsphere-infra/shardingsphere-infra-optimize/src/main/java/org/apache/shardingsphere/infra/optimize/schema/row/CalciteRowEnumerator.java
similarity index 98%
rename from 
shardingsphere-infra/shardingsphere-infra-optimize/src/main/java/org/apache/shardingsphere/infra/optimize/schema/CalciteRowEnumerator.java
rename to 
shardingsphere-infra/shardingsphere-infra-optimize/src/main/java/org/apache/shardingsphere/infra/optimize/schema/row/CalciteRowEnumerator.java
index 799780f..c270893 100644
--- 
a/shardingsphere-infra/shardingsphere-infra-optimize/src/main/java/org/apache/shardingsphere/infra/optimize/schema/CalciteRowEnumerator.java
+++ 
b/shardingsphere-infra/shardingsphere-infra-optimize/src/main/java/org/apache/shardingsphere/infra/optimize/schema/row/CalciteRowEnumerator.java
@@ -15,7 +15,7 @@
  * limitations under the License.
  */
 
-package org.apache.shardingsphere.infra.optimize.schema;
+package org.apache.shardingsphere.infra.optimize.schema.row;
 
 import org.apache.calcite.linq4j.Enumerator;
 import org.apache.shardingsphere.infra.exception.ShardingSphereException;
diff --git 
a/shardingsphere-infra/shardingsphere-infra-optimize/src/main/java/org/apache/shardingsphere/infra/optimize/execute/CalciteInternalExecutor.java
 
b/shardingsphere-infra/shardingsphere-infra-optimize/src/main/java/org/apache/shardingsphere/infra/optimize/schema/row/CalciteRowExecutor.java
similarity index 97%
rename from 
shardingsphere-infra/shardingsphere-infra-optimize/src/main/java/org/apache/shardingsphere/infra/optimize/execute/CalciteInternalExecutor.java
rename to 
shardingsphere-infra/shardingsphere-infra-optimize/src/main/java/org/apache/shardingsphere/infra/optimize/schema/row/CalciteRowExecutor.java
index 7976f6c..f81b382 100644
--- 
a/shardingsphere-infra/shardingsphere-infra-optimize/src/main/java/org/apache/shardingsphere/infra/optimize/execute/CalciteInternalExecutor.java
+++ 
b/shardingsphere-infra/shardingsphere-infra-optimize/src/main/java/org/apache/shardingsphere/infra/optimize/schema/row/CalciteRowExecutor.java
@@ -15,7 +15,7 @@
  * limitations under the License.
  */
 
-package org.apache.shardingsphere.infra.optimize.execute;
+package org.apache.shardingsphere.infra.optimize.schema.row;
 
 import lombok.RequiredArgsConstructor;
 import org.apache.shardingsphere.infra.exception.ShardingSphereException;
@@ -41,7 +41,7 @@ import java.util.stream.Collectors;
  * Calcite internal executor.
  */
 @RequiredArgsConstructor
-public final class CalciteInternalExecutor {
+public final class CalciteRowExecutor {
     
     // TODO Consider use emptyList
     private final Collection<ShardingSphereRule> rules;
diff --git 
a/shardingsphere-infra/shardingsphere-infra-optimize/src/main/java/org/apache/shardingsphere/infra/optimize/schema/AbstractCalciteTable.java
 
b/shardingsphere-infra/shardingsphere-infra-optimize/src/main/java/org/apache/shardingsphere/infra/optimize/schema/table/AbstractCalciteTable.java
similarity index 89%
rename from 
shardingsphere-infra/shardingsphere-infra-optimize/src/main/java/org/apache/shardingsphere/infra/optimize/schema/AbstractCalciteTable.java
rename to 
shardingsphere-infra/shardingsphere-infra-optimize/src/main/java/org/apache/shardingsphere/infra/optimize/schema/table/AbstractCalciteTable.java
index f2e2505..b421683 100644
--- 
a/shardingsphere-infra/shardingsphere-infra-optimize/src/main/java/org/apache/shardingsphere/infra/optimize/schema/AbstractCalciteTable.java
+++ 
b/shardingsphere-infra/shardingsphere-infra-optimize/src/main/java/org/apache/shardingsphere/infra/optimize/schema/table/AbstractCalciteTable.java
@@ -15,7 +15,7 @@
  * limitations under the License.
  */
 
-package org.apache.shardingsphere.infra.optimize.schema;
+package org.apache.shardingsphere.infra.optimize.schema.table;
 
 import lombok.AccessLevel;
 import lombok.Getter;
@@ -25,7 +25,7 @@ import org.apache.calcite.rel.type.RelDataTypeFactory;
 import org.apache.calcite.rel.type.RelProtoDataType;
 import org.apache.calcite.schema.impl.AbstractTable;
 import org.apache.shardingsphere.infra.metadata.schema.model.TableMetaData;
-import 
org.apache.shardingsphere.infra.optimize.execute.CalciteInternalExecutor;
+import org.apache.shardingsphere.infra.optimize.schema.row.CalciteRowExecutor;
 
 /**
  * Abstract calcite table.
@@ -38,7 +38,7 @@ public abstract class AbstractCalciteTable extends 
AbstractTable {
     
     private final RelProtoDataType relProtoDataType;
     
-    private final CalciteInternalExecutor executor;
+    private final CalciteRowExecutor executor;
     
     @Override
     public final RelDataType getRowType(final RelDataTypeFactory typeFactory) {
diff --git 
a/shardingsphere-infra/shardingsphere-infra-optimize/src/main/java/org/apache/shardingsphere/infra/optimize/schema/CalciteFilterableTable.java
 
b/shardingsphere-infra/shardingsphere-infra-optimize/src/main/java/org/apache/shardingsphere/infra/optimize/schema/table/CalciteFilterableTable.java
similarity index 87%
rename from 
shardingsphere-infra/shardingsphere-infra-optimize/src/main/java/org/apache/shardingsphere/infra/optimize/schema/CalciteFilterableTable.java
rename to 
shardingsphere-infra/shardingsphere-infra-optimize/src/main/java/org/apache/shardingsphere/infra/optimize/schema/table/CalciteFilterableTable.java
index a6695d5..ee0a171 100644
--- 
a/shardingsphere-infra/shardingsphere-infra-optimize/src/main/java/org/apache/shardingsphere/infra/optimize/schema/CalciteFilterableTable.java
+++ 
b/shardingsphere-infra/shardingsphere-infra-optimize/src/main/java/org/apache/shardingsphere/infra/optimize/schema/table/CalciteFilterableTable.java
@@ -15,7 +15,7 @@
  * limitations under the License.
  */
 
-package org.apache.shardingsphere.infra.optimize.schema;
+package org.apache.shardingsphere.infra.optimize.schema.table;
 
 import org.apache.calcite.DataContext;
 import org.apache.calcite.linq4j.AbstractEnumerable;
@@ -25,7 +25,8 @@ import org.apache.calcite.rel.type.RelProtoDataType;
 import org.apache.calcite.rex.RexNode;
 import org.apache.calcite.schema.ProjectableFilterableTable;
 import org.apache.shardingsphere.infra.metadata.schema.model.TableMetaData;
-import 
org.apache.shardingsphere.infra.optimize.execute.CalciteInternalExecutor;
+import org.apache.shardingsphere.infra.optimize.schema.row.CalciteRowExecutor;
+import 
org.apache.shardingsphere.infra.optimize.schema.row.CalciteRowEnumerator;
 
 import java.util.List;
 
@@ -36,7 +37,7 @@ import java.util.List;
 public final class CalciteFilterableTable extends AbstractCalciteTable 
implements ProjectableFilterableTable {
     
     public CalciteFilterableTable(final TableMetaData tableMetaData, final 
RelProtoDataType relProtoDataType,
-                                  final CalciteInternalExecutor executor) {
+                                  final CalciteRowExecutor executor) {
         super(tableMetaData, relProtoDataType, executor);
     }
     
diff --git 
a/shardingsphere-jdbc/shardingsphere-jdbc-core/src/main/java/org/apache/shardingsphere/driver/jdbc/core/statement/ShardingSpherePreparedStatement.java
 
b/shardingsphere-jdbc/shardingsphere-jdbc-core/src/main/java/org/apache/shardingsphere/driver/jdbc/core/statement/ShardingSpherePreparedStatement.java
index aef17db..fd2e10a 100644
--- 
a/shardingsphere-jdbc/shardingsphere-jdbc-core/src/main/java/org/apache/shardingsphere/driver/jdbc/core/statement/ShardingSpherePreparedStatement.java
+++ 
b/shardingsphere-jdbc/shardingsphere-jdbc-core/src/main/java/org/apache/shardingsphere/driver/jdbc/core/statement/ShardingSpherePreparedStatement.java
@@ -67,7 +67,7 @@ import 
org.apache.shardingsphere.infra.merge.result.MergedResult;
 import org.apache.shardingsphere.infra.metadata.ShardingSphereMetaData;
 import org.apache.shardingsphere.infra.metadata.schema.ShardingSphereSchema;
 import org.apache.shardingsphere.infra.optimize.execute.CalciteExecutor;
-import 
org.apache.shardingsphere.infra.optimize.execute.CalciteInternalExecutor;
+import org.apache.shardingsphere.infra.optimize.schema.row.CalciteRowExecutor;
 import org.apache.shardingsphere.infra.optimize.execute.CalciteJDBCExecutor;
 import org.apache.shardingsphere.infra.parser.ShardingSphereSQLParserEngine;
 import org.apache.shardingsphere.infra.rule.type.DataNodeContainedRule;
@@ -211,7 +211,7 @@ public final class ShardingSpherePreparedStatement extends 
AbstractPreparedState
         int maxConnectionsSizePerQuery = 
metaDataContexts.getProps().<Integer>getValue(ConfigurationPropertyKey.MAX_CONNECTIONS_SIZE_PER_QUERY);
         StatementExecuteQueryCallback callback = new 
StatementExecuteQueryCallback(metaDataContexts.getDefaultMetaData().getResource().getDatabaseType(),
                 executionContext.getSqlStatementContext().getSqlStatement(), 
SQLExecutorExceptionHandler.isExceptionThrown());
-        CalciteInternalExecutor executor = new 
CalciteInternalExecutor(metaDataContexts.getDefaultMetaData().getRuleMetaData().getRules(),
+        CalciteRowExecutor executor = new 
CalciteRowExecutor(metaDataContexts.getDefaultMetaData().getRuleMetaData().getRules(),
                 maxConnectionsSizePerQuery, connection, 
driverJDBCExecutor.getJdbcExecutor(), executionContext, callback);
         // TODO Consider CalciteRawExecutor
         return new 
CalciteJDBCExecutor(metaDataContexts.getCalciteContextFactory().create(DefaultSchema.LOGIC_NAME,
 executor));
diff --git 
a/shardingsphere-jdbc/shardingsphere-jdbc-core/src/main/java/org/apache/shardingsphere/driver/jdbc/core/statement/ShardingSphereStatement.java
 
b/shardingsphere-jdbc/shardingsphere-jdbc-core/src/main/java/org/apache/shardingsphere/driver/jdbc/core/statement/ShardingSphereStatement.java
index 6d50251..6f7df62 100644
--- 
a/shardingsphere-jdbc/shardingsphere-jdbc-core/src/main/java/org/apache/shardingsphere/driver/jdbc/core/statement/ShardingSphereStatement.java
+++ 
b/shardingsphere-jdbc/shardingsphere-jdbc-core/src/main/java/org/apache/shardingsphere/driver/jdbc/core/statement/ShardingSphereStatement.java
@@ -65,7 +65,7 @@ import 
org.apache.shardingsphere.infra.merge.result.MergedResult;
 import org.apache.shardingsphere.infra.metadata.ShardingSphereMetaData;
 import org.apache.shardingsphere.infra.metadata.schema.ShardingSphereSchema;
 import org.apache.shardingsphere.infra.optimize.execute.CalciteExecutor;
-import 
org.apache.shardingsphere.infra.optimize.execute.CalciteInternalExecutor;
+import org.apache.shardingsphere.infra.optimize.schema.row.CalciteRowExecutor;
 import org.apache.shardingsphere.infra.optimize.execute.CalciteJDBCExecutor;
 import org.apache.shardingsphere.infra.parser.ShardingSphereSQLParserEngine;
 import org.apache.shardingsphere.infra.route.context.RouteUnit;
@@ -181,7 +181,7 @@ public final class ShardingSphereStatement extends 
AbstractStatementAdapter {
         int maxConnectionsSizePerQuery = 
metaDataContexts.getProps().<Integer>getValue(ConfigurationPropertyKey.MAX_CONNECTIONS_SIZE_PER_QUERY);
         StatementExecuteQueryCallback callback = new 
StatementExecuteQueryCallback(metaDataContexts.getDefaultMetaData().getResource().getDatabaseType(),
                 executionContext.getSqlStatementContext().getSqlStatement(), 
SQLExecutorExceptionHandler.isExceptionThrown());
-        CalciteInternalExecutor executor = new 
CalciteInternalExecutor(metaDataContexts.getDefaultMetaData().getRuleMetaData().getRules(),
+        CalciteRowExecutor executor = new 
CalciteRowExecutor(metaDataContexts.getDefaultMetaData().getRuleMetaData().getRules(),
                 maxConnectionsSizePerQuery, connection, 
driverJDBCExecutor.getJdbcExecutor(), executionContext, callback);
         // TODO Consider CalciteRawExecutor
         return new 
CalciteJDBCExecutor(metaDataContexts.getCalciteContextFactory().create(DefaultSchema.LOGIC_NAME,
 executor));
diff --git 
a/shardingsphere-proxy/shardingsphere-proxy-backend/src/main/java/org/apache/shardingsphere/proxy/backend/communication/ProxySQLExecutor.java
 
b/shardingsphere-proxy/shardingsphere-proxy-backend/src/main/java/org/apache/shardingsphere/proxy/backend/communication/ProxySQLExecutor.java
index f61856d..689ee94 100644
--- 
a/shardingsphere-proxy/shardingsphere-proxy-backend/src/main/java/org/apache/shardingsphere/proxy/backend/communication/ProxySQLExecutor.java
+++ 
b/shardingsphere-proxy/shardingsphere-proxy-backend/src/main/java/org/apache/shardingsphere/proxy/backend/communication/ProxySQLExecutor.java
@@ -34,7 +34,7 @@ import 
org.apache.shardingsphere.infra.executor.sql.prepare.driver.DriverExecuti
 import 
org.apache.shardingsphere.infra.executor.sql.prepare.driver.jdbc.StatementOption;
 import 
org.apache.shardingsphere.infra.executor.sql.prepare.raw.RawExecutionPrepareEngine;
 import org.apache.shardingsphere.infra.optimize.execute.CalciteExecutor;
-import 
org.apache.shardingsphere.infra.optimize.execute.CalciteInternalExecutor;
+import org.apache.shardingsphere.infra.optimize.schema.row.CalciteRowExecutor;
 import org.apache.shardingsphere.infra.optimize.execute.CalciteJDBCExecutor;
 import org.apache.shardingsphere.infra.rule.ShardingSphereRule;
 import org.apache.shardingsphere.infra.rule.type.RawExecutionRule;
@@ -135,7 +135,7 @@ public final class ProxySQLExecutor {
         MetaDataContexts metaData = 
ProxyContext.getInstance().getMetaDataContexts();
         ProxyJDBCExecutorCallback callback = 
ProxyJDBCExecutorCallbackFactory.newInstance(type, 
metaData.getMetaData(backendConnection.getSchemaName()).getResource().getDatabaseType(),
 
                 executionContext.getSqlStatementContext().getSqlStatement(), 
backendConnection, isExceptionThrown, isReturnGeneratedKeys, true);
-        CalciteInternalExecutor executor = new CalciteInternalExecutor(rules, 
maxConnectionsSizePerQuery, backendConnection, jdbcExecutor.getJdbcExecutor(), 
executionContext, callback);
+        CalciteRowExecutor executor = new CalciteRowExecutor(rules, 
maxConnectionsSizePerQuery, backendConnection, jdbcExecutor.getJdbcExecutor(), 
executionContext, callback);
         CalciteExecutor calciteExecutor = new 
CalciteJDBCExecutor(metaData.getCalciteContextFactory().create(backendConnection.getSchemaName(),
 executor));
         backendConnection.setCalciteExecutor(calciteExecutor);
         SQLUnit sqlUnit = 
executionContext.getExecutionUnits().iterator().next().getSqlUnit();

Reply via email to