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 c9fd8e89997 Remove useless ShardingSphereSchema in
SQLFederationResultSet (#30688)
c9fd8e89997 is described below
commit c9fd8e8999754b1b824a952d4888600f173cf1eb
Author: Zhengqiang Duan <[email protected]>
AuthorDate: Fri Mar 29 10:50:53 2024 +0800
Remove useless ShardingSphereSchema in SQLFederationResultSet (#30688)
---
.../shardingsphere/sqlfederation/engine/SQLFederationEngine.java | 7 +++----
.../sqlfederation/resultset/SQLFederationResultSet.java | 4 +---
.../sqlfederation/resultset/SQLFederationResultSetTest.java | 3 +--
3 files changed, 5 insertions(+), 9 deletions(-)
diff --git
a/kernel/sql-federation/core/src/main/java/org/apache/shardingsphere/sqlfederation/engine/SQLFederationEngine.java
b/kernel/sql-federation/core/src/main/java/org/apache/shardingsphere/sqlfederation/engine/SQLFederationEngine.java
index 45be877cb59..3cc8b0fad14 100644
---
a/kernel/sql-federation/core/src/main/java/org/apache/shardingsphere/sqlfederation/engine/SQLFederationEngine.java
+++
b/kernel/sql-federation/core/src/main/java/org/apache/shardingsphere/sqlfederation/engine/SQLFederationEngine.java
@@ -182,7 +182,7 @@ public final class SQLFederationEngine implements
AutoCloseable {
sqlFederationRule.getOptimizerContext().getSqlParserRule(),
sqlFederationRule.getOptimizerContext().getParserContext(databaseName).getDatabaseType(),
true);
Schema sqlFederationSchema =
catalogReader.getRootSchema().plus().getSubSchema(schemaName);
SQLFederationExecutionPlan executionPlan =
compileQuery(prepareEngine, callback, federationContext, databaseName,
schemaName, sqlFederationSchema, converter);
- resultSet = executePlan(federationContext, executionPlan,
validator, converter, databaseName, schemaName, sqlFederationSchema);
+ resultSet = executePlan(federationContext, executionPlan,
validator, converter, sqlFederationSchema);
return resultSet;
// CHECKSTYLE:OFF
} catch (final Exception ex) {
@@ -205,13 +205,12 @@ public final class SQLFederationEngine implements
AutoCloseable {
@SuppressWarnings("unchecked")
private ResultSet executePlan(final SQLFederationContext
federationContext, final SQLFederationExecutionPlan executionPlan, final
SqlValidator validator, final SqlToRelConverter converter,
- final String databaseName, final String
schemaName, final Schema sqlFederationSchema) {
+ final Schema sqlFederationSchema) {
try {
Bindable<Object> executablePlan =
EnumerableInterpretable.toBindable(Collections.emptyMap(), null,
(EnumerableRel) executionPlan.getPhysicalPlan(), EnumerableRel.Prefer.ARRAY);
Map<String, Object> params =
createParameters(federationContext.getQueryContext().getParameters());
Enumerator<Object> enumerator = executablePlan.bind(new
SQLFederationBindContext(validator, converter, params)).enumerator();
- ShardingSphereSchema schema =
federationContext.getMetaData().getDatabase(databaseName).getSchema(schemaName);
- return new SQLFederationResultSet(enumerator, schema,
sqlFederationSchema, (SelectStatementContext)
federationContext.getQueryContext().getSqlStatementContext(),
+ return new SQLFederationResultSet(enumerator, sqlFederationSchema,
(SelectStatementContext)
federationContext.getQueryContext().getSqlStatementContext(),
executionPlan.getResultColumnType());
} finally {
processEngine.completeSQLExecution(federationContext.getProcessId());
diff --git
a/kernel/sql-federation/core/src/main/java/org/apache/shardingsphere/sqlfederation/resultset/SQLFederationResultSet.java
b/kernel/sql-federation/core/src/main/java/org/apache/shardingsphere/sqlfederation/resultset/SQLFederationResultSet.java
index 65d9cc648a6..df26d570723 100644
---
a/kernel/sql-federation/core/src/main/java/org/apache/shardingsphere/sqlfederation/resultset/SQLFederationResultSet.java
+++
b/kernel/sql-federation/core/src/main/java/org/apache/shardingsphere/sqlfederation/resultset/SQLFederationResultSet.java
@@ -27,7 +27,6 @@ import
org.apache.shardingsphere.infra.database.core.spi.DatabaseTypedSPILoader;
import org.apache.shardingsphere.infra.database.core.type.DatabaseType;
import
org.apache.shardingsphere.infra.exception.core.ShardingSpherePreconditions;
import
org.apache.shardingsphere.infra.executor.sql.execute.result.query.impl.driver.jdbc.type.util.ResultSetUtils;
-import
org.apache.shardingsphere.infra.metadata.database.schema.model.ShardingSphereSchema;
import
org.apache.shardingsphere.sqlfederation.resultset.converter.SQLFederationColumnTypeConverter;
import java.io.InputStream;
@@ -80,8 +79,7 @@ public final class SQLFederationResultSet extends
AbstractUnsupportedOperationRe
private boolean closed;
- public SQLFederationResultSet(final Enumerator<Object> enumerator, final
ShardingSphereSchema schema, final Schema sqlFederationSchema,
- final SelectStatementContext
selectStatementContext, final RelDataType resultColumnType) {
+ public SQLFederationResultSet(final Enumerator<Object> enumerator, final
Schema sqlFederationSchema, final SelectStatementContext
selectStatementContext, final RelDataType resultColumnType) {
this.enumerator = enumerator;
DatabaseType databaseType =
selectStatementContext.getDatabaseType().getTrunkDatabaseType().orElse(selectStatementContext.getDatabaseType());
columnTypeConverter =
DatabaseTypedSPILoader.getService(SQLFederationColumnTypeConverter.class,
databaseType);
diff --git
a/kernel/sql-federation/core/src/test/java/org/apache/shardingsphere/sqlfederation/resultset/SQLFederationResultSetTest.java
b/kernel/sql-federation/core/src/test/java/org/apache/shardingsphere/sqlfederation/resultset/SQLFederationResultSetTest.java
index d6ef527980b..0ee81941485 100644
---
a/kernel/sql-federation/core/src/test/java/org/apache/shardingsphere/sqlfederation/resultset/SQLFederationResultSetTest.java
+++
b/kernel/sql-federation/core/src/test/java/org/apache/shardingsphere/sqlfederation/resultset/SQLFederationResultSetTest.java
@@ -24,7 +24,6 @@ import
org.apache.shardingsphere.infra.binder.context.segment.select.projection.
import
org.apache.shardingsphere.infra.binder.context.segment.table.TablesContext;
import
org.apache.shardingsphere.infra.binder.context.statement.dml.SelectStatementContext;
import org.apache.shardingsphere.infra.database.core.type.DatabaseType;
-import
org.apache.shardingsphere.infra.metadata.database.schema.model.ShardingSphereSchema;
import org.apache.shardingsphere.infra.spi.type.typed.TypedSPILoader;
import
org.apache.shardingsphere.sqlfederation.optimizer.metadata.schema.SQLFederationSchema;
import org.junit.jupiter.api.AfterEach;
@@ -69,7 +68,7 @@ class SQLFederationResultSetTest {
@BeforeEach
void setUp() {
enumerator = createEnumerator();
- federationResultSet = new SQLFederationResultSet(enumerator,
mock(ShardingSphereSchema.class), mock(SQLFederationSchema.class),
createSelectStatementContext(), mock(RelDataType.class));
+ federationResultSet = new SQLFederationResultSet(enumerator,
mock(SQLFederationSchema.class), createSelectStatementContext(),
mock(RelDataType.class));
}
private SelectStatementContext createSelectStatementContext() {