This is an automated email from the ASF dual-hosted git repository.
gvvinblade pushed a commit to branch ignite-12248
in repository https://gitbox.apache.org/repos/asf/ignite.git
The following commit(s) were added to refs/heads/ignite-12248 by this push:
new e33767e pending
e33767e is described below
commit e33767e8abcc6a34b93064ac7c6f4bc24bed7c34
Author: Igor Seliverstov <[email protected]>
AuthorDate: Fri Nov 1 16:51:05 2019 +0300
pending
---
.../calcite/metadata/IgniteMdSourceDistribution.java | 8 ++++----
.../processors/query/calcite/rel/CloneContext.java | 10 ++++------
.../IgniteLogicalExchange.java => IgniteExchange.java} | 12 +++++-------
.../IgniteLogicalFilter.java => IgniteFilter.java} | 18 ++++++++----------
.../IgniteLogicalJoin.java => IgniteHashJoin.java} | 14 ++++++--------
.../IgniteLogicalProject.java => IgniteProject.java} | 18 ++++++++----------
...gniteLogicalTableScan.java => IgniteTableScan.java} | 10 ++++------
.../query/calcite/{exchange => rel}/Receiver.java | 4 +---
.../query/calcite/{exchange => rel}/Sender.java | 4 +---
.../calcite/rule/{logical => }/IgniteFilterRule.java | 8 ++++----
.../IgniteJoinRule.java => IgniteHashJoinRule.java} | 12 ++++++------
.../calcite/rule/{logical => }/IgniteProjectRule.java | 8 ++++----
.../processors/query/calcite/rule/IgniteRules.java | 5 +----
.../processors/query/calcite/schema/IgniteTable.java | 4 ++--
.../processors/query/calcite/splitter/Fragment.java | 4 ++--
.../query/calcite/splitter/SourceDistribution.java | 2 +-
.../processors/query/calcite/splitter/Splitter.java | 10 +++++-----
.../query/calcite/trait/DistributionTraitDef.java | 4 ++--
18 files changed, 68 insertions(+), 87 deletions(-)
diff --git
a/modules/calcite/src/main/java/org/apache/ignite/internal/processors/query/calcite/metadata/IgniteMdSourceDistribution.java
b/modules/calcite/src/main/java/org/apache/ignite/internal/processors/query/calcite/metadata/IgniteMdSourceDistribution.java
index 6cb5bcf..a944db1 100644
---
a/modules/calcite/src/main/java/org/apache/ignite/internal/processors/query/calcite/metadata/IgniteMdSourceDistribution.java
+++
b/modules/calcite/src/main/java/org/apache/ignite/internal/processors/query/calcite/metadata/IgniteMdSourceDistribution.java
@@ -27,10 +27,10 @@ import org.apache.calcite.rel.metadata.MetadataHandler;
import org.apache.calcite.rel.metadata.ReflectiveRelMetadataProvider;
import org.apache.calcite.rel.metadata.RelMetadataProvider;
import org.apache.calcite.rel.metadata.RelMetadataQuery;
-import org.apache.ignite.internal.processors.query.calcite.exchange.Receiver;
-import org.apache.ignite.internal.processors.query.calcite.exchange.Sender;
import
org.apache.ignite.internal.processors.query.calcite.metadata.IgniteMetadata.SourceDistributionMetadata;
-import
org.apache.ignite.internal.processors.query.calcite.rel.logical.IgniteLogicalTableScan;
+import org.apache.ignite.internal.processors.query.calcite.rel.IgniteTableScan;
+import org.apache.ignite.internal.processors.query.calcite.rel.Receiver;
+import org.apache.ignite.internal.processors.query.calcite.rel.Sender;
import
org.apache.ignite.internal.processors.query.calcite.splitter.PartitionsDistribution;
import
org.apache.ignite.internal.processors.query.calcite.splitter.SourceDistribution;
import org.apache.ignite.internal.processors.query.calcite.util.IgniteMethod;
@@ -79,7 +79,7 @@ public class IgniteMdSourceDistribution implements
MetadataHandler<SourceDistrib
return res;
}
- public SourceDistribution getSourceDistribution(IgniteLogicalTableScan
rel, RelMetadataQuery mq) {
+ public SourceDistribution getSourceDistribution(IgniteTableScan rel,
RelMetadataQuery mq) {
return rel.tableDistribution();
}
diff --git
a/modules/calcite/src/main/java/org/apache/ignite/internal/processors/query/calcite/rel/CloneContext.java
b/modules/calcite/src/main/java/org/apache/ignite/internal/processors/query/calcite/rel/CloneContext.java
index 5c7046e..967606f 100644
---
a/modules/calcite/src/main/java/org/apache/ignite/internal/processors/query/calcite/rel/CloneContext.java
+++
b/modules/calcite/src/main/java/org/apache/ignite/internal/processors/query/calcite/rel/CloneContext.java
@@ -35,13 +35,11 @@ public final class CloneContext {
return cluster;
}
- public <T extends IgniteRel> T clone(RelNode src) {
- try {
- return (T) mapping.computeIfAbsent((IgniteRel) src, this::clone0);
- }
- catch (ClassCastException e) {
+ public <T extends RelNode> T clone(T src) {
+ if (!(src instanceof IgniteRel))
throw new IllegalStateException("Unexpected node type: " +
src.getClass());
- }
+
+ return (T) mapping.computeIfAbsent((IgniteRel) src, this::clone0);
}
private IgniteRel clone0(IgniteRel src) {
diff --git
a/modules/calcite/src/main/java/org/apache/ignite/internal/processors/query/calcite/rel/logical/IgniteLogicalExchange.java
b/modules/calcite/src/main/java/org/apache/ignite/internal/processors/query/calcite/rel/IgniteExchange.java
similarity index 80%
rename from
modules/calcite/src/main/java/org/apache/ignite/internal/processors/query/calcite/rel/logical/IgniteLogicalExchange.java
rename to
modules/calcite/src/main/java/org/apache/ignite/internal/processors/query/calcite/rel/IgniteExchange.java
index dd2ad05..1bd637c 100644
---
a/modules/calcite/src/main/java/org/apache/ignite/internal/processors/query/calcite/rel/logical/IgniteLogicalExchange.java
+++
b/modules/calcite/src/main/java/org/apache/ignite/internal/processors/query/calcite/rel/IgniteExchange.java
@@ -14,7 +14,7 @@
* limitations under the License.
*/
-package org.apache.ignite.internal.processors.query.calcite.rel.logical;
+package org.apache.ignite.internal.processors.query.calcite.rel;
import java.util.List;
import org.apache.calcite.plan.RelOptCluster;
@@ -26,14 +26,12 @@ import org.apache.calcite.rel.RelWriter;
import org.apache.calcite.rel.SingleRel;
import org.apache.calcite.rel.metadata.RelMetadataQuery;
import org.apache.calcite.util.Util;
-import org.apache.ignite.internal.processors.query.calcite.rel.CloneContext;
-import org.apache.ignite.internal.processors.query.calcite.rel.IgniteRel;
import
org.apache.ignite.internal.processors.query.calcite.trait.DistributionTraitDef;
/**
*
*/
-public final class IgniteLogicalExchange extends SingleRel implements
IgniteRel {
+public final class IgniteExchange extends SingleRel implements IgniteRel {
/**
* Creates a <code>SingleRel</code>.
*
@@ -41,7 +39,7 @@ public final class IgniteLogicalExchange extends SingleRel
implements IgniteRel
* @param traits Node traits.
* @param input Input relational expression
*/
- public IgniteLogicalExchange(RelOptCluster cluster, RelTraitSet traits,
RelNode input) {
+ public IgniteExchange(RelOptCluster cluster, RelTraitSet traits, RelNode
input) {
super(cluster, traits, input);
}
@@ -53,11 +51,11 @@ public final class IgniteLogicalExchange extends SingleRel
implements IgniteRel
}
@Override public RelNode copy(RelTraitSet traitSet, List<RelNode> inputs) {
- return new IgniteLogicalExchange(getCluster(), traitSet, sole(inputs));
+ return new IgniteExchange(getCluster(), traitSet, sole(inputs));
}
@Override public IgniteRel clone(CloneContext ctx) {
- throw new UnsupportedOperationException();
+ return new IgniteExchange(ctx.getCluster(), getTraitSet(),
ctx.clone(getInput()));
}
@Override public RelWriter explainTerms(RelWriter pw) {
diff --git
a/modules/calcite/src/main/java/org/apache/ignite/internal/processors/query/calcite/rel/logical/IgniteLogicalFilter.java
b/modules/calcite/src/main/java/org/apache/ignite/internal/processors/query/calcite/rel/IgniteFilter.java
similarity index 71%
rename from
modules/calcite/src/main/java/org/apache/ignite/internal/processors/query/calcite/rel/logical/IgniteLogicalFilter.java
rename to
modules/calcite/src/main/java/org/apache/ignite/internal/processors/query/calcite/rel/IgniteFilter.java
index 2bf7b6c..1e23373 100644
---
a/modules/calcite/src/main/java/org/apache/ignite/internal/processors/query/calcite/rel/logical/IgniteLogicalFilter.java
+++
b/modules/calcite/src/main/java/org/apache/ignite/internal/processors/query/calcite/rel/IgniteFilter.java
@@ -14,7 +14,7 @@
* See the License for the specific language governing permissions and
* limitations under the License.
*/
-package org.apache.ignite.internal.processors.query.calcite.rel.logical;
+package org.apache.ignite.internal.processors.query.calcite.rel;
import java.util.Objects;
import java.util.Set;
@@ -27,14 +27,12 @@ import org.apache.calcite.rel.core.Filter;
import org.apache.calcite.rex.RexNode;
import
org.apache.ignite.internal.processors.query.calcite.metadata.IgniteMdDistribution;
import
org.apache.ignite.internal.processors.query.calcite.metadata.RelMetadataQueryEx;
-import org.apache.ignite.internal.processors.query.calcite.rel.CloneContext;
-import org.apache.ignite.internal.processors.query.calcite.rel.IgniteRel;
import
org.apache.ignite.internal.processors.query.calcite.trait.DistributionTraitDef;
-public final class IgniteLogicalFilter extends Filter implements IgniteRel {
+public final class IgniteFilter extends Filter implements IgniteRel {
private final Set<CorrelationId> variablesSet;
- public IgniteLogicalFilter(RelOptCluster cluster, RelTraitSet traitSet,
RelNode child,
+ public IgniteFilter(RelOptCluster cluster, RelTraitSet traitSet, RelNode
child,
RexNode condition, Set<CorrelationId> variablesSet) {
super(cluster, traitSet, child, condition);
this.variablesSet = Objects.requireNonNull(variablesSet);
@@ -45,12 +43,12 @@ public final class IgniteLogicalFilter extends Filter
implements IgniteRel {
}
@Override public IgniteRel clone(CloneContext ctx) {
- return new IgniteLogicalFilter(ctx.getCluster(), getTraitSet(),
ctx.clone(getInput()), getCondition(), variablesSet);
+ return new IgniteFilter(ctx.getCluster(), getTraitSet(),
ctx.clone(getInput()), getCondition(), variablesSet);
}
- @Override public IgniteLogicalFilter copy(RelTraitSet traitSet, RelNode
input,
+ @Override public IgniteFilter copy(RelTraitSet traitSet, RelNode input,
RexNode condition) {
- return new IgniteLogicalFilter(getCluster(), traitSet, input, condition,
variablesSet);
+ return new IgniteFilter(getCluster(), traitSet, input, condition,
variablesSet);
}
@Override public RelWriter explainTerms(RelWriter pw) {
@@ -58,11 +56,11 @@ public final class IgniteLogicalFilter extends Filter
implements IgniteRel {
.itemIf("variablesSet", variablesSet, !variablesSet.isEmpty());
}
- public static IgniteLogicalFilter create(Filter filter, RelNode input) {
+ public static IgniteFilter create(Filter filter, RelNode input) {
RelTraitSet traits = filter.getTraitSet()
.replace(IgniteRel.LOGICAL_CONVENTION)
.replaceIf(DistributionTraitDef.INSTANCE, () ->
IgniteMdDistribution.filter(RelMetadataQueryEx.instance(), input,
filter.getCondition()));
- return new IgniteLogicalFilter(filter.getCluster(), traits, input,
filter.getCondition(), filter.getVariablesSet());
+ return new IgniteFilter(filter.getCluster(), traits, input,
filter.getCondition(), filter.getVariablesSet());
}
}
\ No newline at end of file
diff --git
a/modules/calcite/src/main/java/org/apache/ignite/internal/processors/query/calcite/rel/logical/IgniteLogicalJoin.java
b/modules/calcite/src/main/java/org/apache/ignite/internal/processors/query/calcite/rel/IgniteHashJoin.java
similarity index 74%
rename from
modules/calcite/src/main/java/org/apache/ignite/internal/processors/query/calcite/rel/logical/IgniteLogicalJoin.java
rename to
modules/calcite/src/main/java/org/apache/ignite/internal/processors/query/calcite/rel/IgniteHashJoin.java
index df5bb2e..2818382 100644
---
a/modules/calcite/src/main/java/org/apache/ignite/internal/processors/query/calcite/rel/logical/IgniteLogicalJoin.java
+++
b/modules/calcite/src/main/java/org/apache/ignite/internal/processors/query/calcite/rel/IgniteHashJoin.java
@@ -14,7 +14,7 @@
* See the License for the specific language governing permissions and
* limitations under the License.
*/
-package org.apache.ignite.internal.processors.query.calcite.rel.logical;
+package org.apache.ignite.internal.processors.query.calcite.rel;
import java.util.Set;
import org.apache.calcite.plan.RelOptCluster;
@@ -25,13 +25,11 @@ import org.apache.calcite.rel.core.CorrelationId;
import org.apache.calcite.rel.core.Join;
import org.apache.calcite.rel.core.JoinRelType;
import org.apache.calcite.rex.RexNode;
-import org.apache.ignite.internal.processors.query.calcite.rel.CloneContext;
-import org.apache.ignite.internal.processors.query.calcite.rel.IgniteRel;
-public final class IgniteLogicalJoin extends Join implements IgniteRel {
+public final class IgniteHashJoin extends Join implements IgniteRel {
private final boolean semiJoinDone;
- public IgniteLogicalJoin(
+ public IgniteHashJoin(
RelOptCluster cluster,
RelTraitSet traitSet,
RelNode left,
@@ -45,12 +43,12 @@ public final class IgniteLogicalJoin extends Join
implements IgniteRel {
}
@Override public IgniteRel clone(CloneContext ctx) {
- return new IgniteLogicalJoin(ctx.getCluster(), getTraitSet(),
ctx.clone(getLeft()), ctx.clone(getRight()), getCondition(), variablesSet,
getJoinType(), semiJoinDone);
+ return new IgniteHashJoin(ctx.getCluster(), getTraitSet(),
ctx.clone(getLeft()), ctx.clone(getRight()), getCondition(), variablesSet,
getJoinType(), semiJoinDone);
}
- @Override public IgniteLogicalJoin copy(RelTraitSet traitSet, RexNode
conditionExpr,
+ @Override public IgniteHashJoin copy(RelTraitSet traitSet, RexNode
conditionExpr,
RelNode left, RelNode right, JoinRelType joinType, boolean semiJoinDone)
{
- return new IgniteLogicalJoin(getCluster(), traitSet, left, right,
conditionExpr, variablesSet, joinType, semiJoinDone);
+ return new IgniteHashJoin(getCluster(), traitSet, left, right,
conditionExpr, variablesSet, joinType, semiJoinDone);
}
@Override public RelWriter explainTerms(RelWriter pw) {
diff --git
a/modules/calcite/src/main/java/org/apache/ignite/internal/processors/query/calcite/rel/logical/IgniteLogicalProject.java
b/modules/calcite/src/main/java/org/apache/ignite/internal/processors/query/calcite/rel/IgniteProject.java
similarity index 70%
rename from
modules/calcite/src/main/java/org/apache/ignite/internal/processors/query/calcite/rel/logical/IgniteLogicalProject.java
rename to
modules/calcite/src/main/java/org/apache/ignite/internal/processors/query/calcite/rel/IgniteProject.java
index 41a6f2a..1c1e4ec 100644
---
a/modules/calcite/src/main/java/org/apache/ignite/internal/processors/query/calcite/rel/logical/IgniteLogicalProject.java
+++
b/modules/calcite/src/main/java/org/apache/ignite/internal/processors/query/calcite/rel/IgniteProject.java
@@ -14,7 +14,7 @@
* See the License for the specific language governing permissions and
* limitations under the License.
*/
-package org.apache.ignite.internal.processors.query.calcite.rel.logical;
+package org.apache.ignite.internal.processors.query.calcite.rel;
import java.util.List;
import org.apache.calcite.plan.RelOptCluster;
@@ -25,12 +25,10 @@ import org.apache.calcite.rel.type.RelDataType;
import org.apache.calcite.rex.RexNode;
import
org.apache.ignite.internal.processors.query.calcite.metadata.IgniteMdDistribution;
import
org.apache.ignite.internal.processors.query.calcite.metadata.RelMetadataQueryEx;
-import org.apache.ignite.internal.processors.query.calcite.rel.CloneContext;
-import org.apache.ignite.internal.processors.query.calcite.rel.IgniteRel;
import
org.apache.ignite.internal.processors.query.calcite.trait.DistributionTraitDef;
-public final class IgniteLogicalProject extends Project implements IgniteRel {
- public IgniteLogicalProject(
+public final class IgniteProject extends Project implements IgniteRel {
+ public IgniteProject(
RelOptCluster cluster,
RelTraitSet traitSet,
RelNode input,
@@ -40,19 +38,19 @@ public final class IgniteLogicalProject extends Project
implements IgniteRel {
}
@Override public IgniteRel clone(CloneContext ctx) {
- return new IgniteLogicalProject(ctx.getCluster(), getTraitSet(),
ctx.clone(getInput()), getProjects(), getRowType());
+ return new IgniteProject(ctx.getCluster(), getTraitSet(),
ctx.clone(getInput()), getProjects(), getRowType());
}
- @Override public IgniteLogicalProject copy(RelTraitSet traitSet, RelNode
input,
+ @Override public IgniteProject copy(RelTraitSet traitSet, RelNode input,
List<RexNode> projects, RelDataType rowType) {
- return new IgniteLogicalProject(getCluster(), traitSet, input, projects,
rowType);
+ return new IgniteProject(getCluster(), traitSet, input, projects, rowType);
}
- public static IgniteLogicalProject create(Project project, RelNode input) {
+ public static IgniteProject create(Project project, RelNode input) {
RelTraitSet traits = project.getTraitSet()
.replace(IgniteRel.LOGICAL_CONVENTION)
.replaceIf(DistributionTraitDef.INSTANCE, () ->
IgniteMdDistribution.project(RelMetadataQueryEx.instance(), input,
project.getProjects()));
- return new IgniteLogicalProject(project.getCluster(), traits, input,
project.getProjects(), project.getRowType());
+ return new IgniteProject(project.getCluster(), traits, input,
project.getProjects(), project.getRowType());
}
}
diff --git
a/modules/calcite/src/main/java/org/apache/ignite/internal/processors/query/calcite/rel/logical/IgniteLogicalTableScan.java
b/modules/calcite/src/main/java/org/apache/ignite/internal/processors/query/calcite/rel/IgniteTableScan.java
similarity index 78%
rename from
modules/calcite/src/main/java/org/apache/ignite/internal/processors/query/calcite/rel/logical/IgniteLogicalTableScan.java
rename to
modules/calcite/src/main/java/org/apache/ignite/internal/processors/query/calcite/rel/IgniteTableScan.java
index 87ccb20..5ceaaae 100644
---
a/modules/calcite/src/main/java/org/apache/ignite/internal/processors/query/calcite/rel/logical/IgniteLogicalTableScan.java
+++
b/modules/calcite/src/main/java/org/apache/ignite/internal/processors/query/calcite/rel/IgniteTableScan.java
@@ -14,7 +14,7 @@
* See the License for the specific language governing permissions and
* limitations under the License.
*/
-package org.apache.ignite.internal.processors.query.calcite.rel.logical;
+package org.apache.ignite.internal.processors.query.calcite.rel;
import java.util.List;
import org.apache.calcite.plan.RelOptCluster;
@@ -22,19 +22,17 @@ import org.apache.calcite.plan.RelOptTable;
import org.apache.calcite.plan.RelTraitSet;
import org.apache.calcite.rel.RelNode;
import org.apache.calcite.rel.core.TableScan;
-import org.apache.ignite.internal.processors.query.calcite.rel.CloneContext;
-import org.apache.ignite.internal.processors.query.calcite.rel.IgniteRel;
import org.apache.ignite.internal.processors.query.calcite.schema.IgniteTable;
import
org.apache.ignite.internal.processors.query.calcite.splitter.SourceDistribution;
import
org.apache.ignite.internal.processors.query.calcite.trait.DistributionTraitDef;
-public final class IgniteLogicalTableScan extends TableScan implements
IgniteRel {
- public IgniteLogicalTableScan(RelOptCluster cluster, RelTraitSet traitSet,
RelOptTable table) {
+public final class IgniteTableScan extends TableScan implements IgniteRel {
+ public IgniteTableScan(RelOptCluster cluster, RelTraitSet traitSet,
RelOptTable table) {
super(cluster, traitSet, table);
}
@Override public IgniteRel clone(CloneContext ctx) {
- return new IgniteLogicalTableScan(ctx.getCluster(), getTraitSet(),
getTable());
+ return new IgniteTableScan(ctx.getCluster(), getTraitSet(), getTable());
}
@Override public RelNode copy(RelTraitSet traitSet, List<RelNode> inputs) {
diff --git
a/modules/calcite/src/main/java/org/apache/ignite/internal/processors/query/calcite/exchange/Receiver.java
b/modules/calcite/src/main/java/org/apache/ignite/internal/processors/query/calcite/rel/Receiver.java
similarity index 90%
rename from
modules/calcite/src/main/java/org/apache/ignite/internal/processors/query/calcite/exchange/Receiver.java
rename to
modules/calcite/src/main/java/org/apache/ignite/internal/processors/query/calcite/rel/Receiver.java
index dda7840..a4d46f7 100644
---
a/modules/calcite/src/main/java/org/apache/ignite/internal/processors/query/calcite/exchange/Receiver.java
+++
b/modules/calcite/src/main/java/org/apache/ignite/internal/processors/query/calcite/rel/Receiver.java
@@ -14,7 +14,7 @@
* limitations under the License.
*/
-package org.apache.ignite.internal.processors.query.calcite.exchange;
+package org.apache.ignite.internal.processors.query.calcite.rel;
import java.util.List;
import org.apache.calcite.plan.RelOptCluster;
@@ -22,8 +22,6 @@ import org.apache.calcite.plan.RelTraitSet;
import org.apache.calcite.rel.RelNode;
import org.apache.calcite.rel.SingleRel;
import
org.apache.ignite.internal.processors.query.calcite.metadata.RelMetadataQueryEx;
-import org.apache.ignite.internal.processors.query.calcite.rel.CloneContext;
-import org.apache.ignite.internal.processors.query.calcite.rel.IgniteRel;
import
org.apache.ignite.internal.processors.query.calcite.splitter.SourceDistribution;
/**
diff --git
a/modules/calcite/src/main/java/org/apache/ignite/internal/processors/query/calcite/exchange/Sender.java
b/modules/calcite/src/main/java/org/apache/ignite/internal/processors/query/calcite/rel/Sender.java
similarity index 93%
rename from
modules/calcite/src/main/java/org/apache/ignite/internal/processors/query/calcite/exchange/Sender.java
rename to
modules/calcite/src/main/java/org/apache/ignite/internal/processors/query/calcite/rel/Sender.java
index 7c1cd83..715eb3f 100644
---
a/modules/calcite/src/main/java/org/apache/ignite/internal/processors/query/calcite/exchange/Sender.java
+++
b/modules/calcite/src/main/java/org/apache/ignite/internal/processors/query/calcite/rel/Sender.java
@@ -14,7 +14,7 @@
* limitations under the License.
*/
-package org.apache.ignite.internal.processors.query.calcite.exchange;
+package org.apache.ignite.internal.processors.query.calcite.rel;
import java.util.List;
import org.apache.calcite.plan.RelOptCluster;
@@ -23,8 +23,6 @@ import org.apache.calcite.rel.RelNode;
import org.apache.calcite.rel.SingleRel;
import org.apache.calcite.rel.metadata.RelMetadataQuery;
import
org.apache.ignite.internal.processors.query.calcite.metadata.RelMetadataQueryEx;
-import org.apache.ignite.internal.processors.query.calcite.rel.CloneContext;
-import org.apache.ignite.internal.processors.query.calcite.rel.IgniteRel;
import
org.apache.ignite.internal.processors.query.calcite.splitter.SourceDistribution;
import
org.apache.ignite.internal.processors.query.calcite.trait.DistributionFunction;
import
org.apache.ignite.internal.processors.query.calcite.trait.DistributionTrait;
diff --git
a/modules/calcite/src/main/java/org/apache/ignite/internal/processors/query/calcite/rule/logical/IgniteFilterRule.java
b/modules/calcite/src/main/java/org/apache/ignite/internal/processors/query/calcite/rule/IgniteFilterRule.java
similarity index 89%
rename from
modules/calcite/src/main/java/org/apache/ignite/internal/processors/query/calcite/rule/logical/IgniteFilterRule.java
rename to
modules/calcite/src/main/java/org/apache/ignite/internal/processors/query/calcite/rule/IgniteFilterRule.java
index 6693d60..6f8357e 100644
---
a/modules/calcite/src/main/java/org/apache/ignite/internal/processors/query/calcite/rule/logical/IgniteFilterRule.java
+++
b/modules/calcite/src/main/java/org/apache/ignite/internal/processors/query/calcite/rule/IgniteFilterRule.java
@@ -15,7 +15,7 @@
* limitations under the License.
*/
-package org.apache.ignite.internal.processors.query.calcite.rule.logical;
+package org.apache.ignite.internal.processors.query.calcite.rule;
import org.apache.calcite.plan.RelOptRule;
import org.apache.calcite.plan.RelOptRuleCall;
@@ -23,8 +23,8 @@ import org.apache.calcite.plan.RelTraitSet;
import org.apache.calcite.rel.RelNode;
import org.apache.calcite.rel.core.RelFactories;
import org.apache.calcite.rel.logical.LogicalFilter;
+import org.apache.ignite.internal.processors.query.calcite.rel.IgniteFilter;
import org.apache.ignite.internal.processors.query.calcite.rel.IgniteRel;
-import
org.apache.ignite.internal.processors.query.calcite.rel.logical.IgniteLogicalFilter;
import org.apache.ignite.internal.processors.query.calcite.util.Commons;
import org.apache.ignite.internal.processors.query.calcite.util.RelOp;
@@ -46,9 +46,9 @@ public class IgniteFilterRule extends RelOptRule {
RelNode converted = convert(input, traitSet);
- RelOp<LogicalFilter, Boolean> transformOp =
Commons.transformSubset(call, converted, IgniteLogicalFilter::create);
+ RelOp<LogicalFilter, Boolean> transformOp =
Commons.transformSubset(call, converted, IgniteFilter::create);
if (!transformOp.go(filter))
- call.transformTo(IgniteLogicalFilter.create(filter, converted));
+ call.transformTo(IgniteFilter.create(filter, converted));
}
}
diff --git
a/modules/calcite/src/main/java/org/apache/ignite/internal/processors/query/calcite/rule/logical/IgniteJoinRule.java
b/modules/calcite/src/main/java/org/apache/ignite/internal/processors/query/calcite/rule/IgniteHashJoinRule.java
similarity index 89%
rename from
modules/calcite/src/main/java/org/apache/ignite/internal/processors/query/calcite/rule/logical/IgniteJoinRule.java
rename to
modules/calcite/src/main/java/org/apache/ignite/internal/processors/query/calcite/rule/IgniteHashJoinRule.java
index 3913cb4..6f041f0 100644
---
a/modules/calcite/src/main/java/org/apache/ignite/internal/processors/query/calcite/rule/logical/IgniteJoinRule.java
+++
b/modules/calcite/src/main/java/org/apache/ignite/internal/processors/query/calcite/rule/IgniteHashJoinRule.java
@@ -15,7 +15,7 @@
* limitations under the License.
*/
-package org.apache.ignite.internal.processors.query.calcite.rule.logical;
+package org.apache.ignite.internal.processors.query.calcite.rule;
import org.apache.calcite.plan.RelOptRule;
import org.apache.calcite.plan.RelOptRuleCall;
@@ -25,8 +25,8 @@ import org.apache.calcite.rel.core.RelFactories;
import org.apache.calcite.rel.logical.LogicalJoin;
import org.apache.calcite.rel.metadata.RelMetadataQuery;
import
org.apache.ignite.internal.processors.query.calcite.metadata.IgniteMdDistribution;
+import org.apache.ignite.internal.processors.query.calcite.rel.IgniteHashJoin;
import org.apache.ignite.internal.processors.query.calcite.rel.IgniteRel;
-import
org.apache.ignite.internal.processors.query.calcite.rel.logical.IgniteLogicalJoin;
import
org.apache.ignite.internal.processors.query.calcite.trait.DistributionTraitDef;
import
org.apache.ignite.internal.processors.query.calcite.trait.IgniteDistributions;
import org.apache.ignite.internal.processors.query.calcite.util.Commons;
@@ -34,10 +34,10 @@ import
org.apache.ignite.internal.processors.query.calcite.util.Commons;
/**
*
*/
-public class IgniteJoinRule extends RelOptRule {
- public static final RelOptRule INSTANCE = new IgniteJoinRule();
+public class IgniteHashJoinRule extends RelOptRule {
+ public static final RelOptRule INSTANCE = new IgniteHashJoinRule();
- public IgniteJoinRule() {
+ public IgniteHashJoinRule() {
super(Commons.any(LogicalJoin.class, RelNode.class),
RelFactories.LOGICAL_BUILDER, "IgniteJoinRule");
}
@@ -61,7 +61,7 @@ public class IgniteJoinRule extends RelOptRule {
.replace(IgniteRel.LOGICAL_CONVENTION)
.replaceIf(DistributionTraitDef.INSTANCE, () ->
IgniteMdDistribution.join(mq, left, right, join.getCondition()));
- call.transformTo(new IgniteLogicalJoin(join.getCluster(), traitSet,
left, right,
+ call.transformTo(new IgniteHashJoin(join.getCluster(), traitSet, left,
right,
join.getCondition(), join.getVariablesSet(), join.getJoinType(),
join.isSemiJoinDone()));
}
}
diff --git
a/modules/calcite/src/main/java/org/apache/ignite/internal/processors/query/calcite/rule/logical/IgniteProjectRule.java
b/modules/calcite/src/main/java/org/apache/ignite/internal/processors/query/calcite/rule/IgniteProjectRule.java
similarity index 89%
rename from
modules/calcite/src/main/java/org/apache/ignite/internal/processors/query/calcite/rule/logical/IgniteProjectRule.java
rename to
modules/calcite/src/main/java/org/apache/ignite/internal/processors/query/calcite/rule/IgniteProjectRule.java
index b6c84fb..8e38268 100644
---
a/modules/calcite/src/main/java/org/apache/ignite/internal/processors/query/calcite/rule/logical/IgniteProjectRule.java
+++
b/modules/calcite/src/main/java/org/apache/ignite/internal/processors/query/calcite/rule/IgniteProjectRule.java
@@ -15,7 +15,7 @@
* limitations under the License.
*/
-package org.apache.ignite.internal.processors.query.calcite.rule.logical;
+package org.apache.ignite.internal.processors.query.calcite.rule;
import org.apache.calcite.plan.RelOptRule;
import org.apache.calcite.plan.RelOptRuleCall;
@@ -23,8 +23,8 @@ import org.apache.calcite.plan.RelTraitSet;
import org.apache.calcite.rel.RelNode;
import org.apache.calcite.rel.core.RelFactories;
import org.apache.calcite.rel.logical.LogicalProject;
+import org.apache.ignite.internal.processors.query.calcite.rel.IgniteProject;
import org.apache.ignite.internal.processors.query.calcite.rel.IgniteRel;
-import
org.apache.ignite.internal.processors.query.calcite.rel.logical.IgniteLogicalProject;
import org.apache.ignite.internal.processors.query.calcite.util.Commons;
import org.apache.ignite.internal.processors.query.calcite.util.RelOp;
@@ -46,9 +46,9 @@ public class IgniteProjectRule extends RelOptRule {
RelNode converted = convert(input, traitSet);
- RelOp<LogicalProject, Boolean> transformOp =
Commons.transformSubset(call, converted, IgniteLogicalProject::create);
+ RelOp<LogicalProject, Boolean> transformOp =
Commons.transformSubset(call, converted, IgniteProject::create);
if (!transformOp.go(project))
- call.transformTo(IgniteLogicalProject.create(project, converted));
+ call.transformTo(IgniteProject.create(project, converted));
}
}
diff --git
a/modules/calcite/src/main/java/org/apache/ignite/internal/processors/query/calcite/rule/IgniteRules.java
b/modules/calcite/src/main/java/org/apache/ignite/internal/processors/query/calcite/rule/IgniteRules.java
index 2d155f5..53ce878 100644
---
a/modules/calcite/src/main/java/org/apache/ignite/internal/processors/query/calcite/rule/IgniteRules.java
+++
b/modules/calcite/src/main/java/org/apache/ignite/internal/processors/query/calcite/rule/IgniteRules.java
@@ -64,9 +64,6 @@ import org.apache.calcite.rel.rules.UnionMergeRule;
import org.apache.calcite.rel.rules.UnionPullUpConstantsRule;
import org.apache.calcite.rel.rules.UnionToDistinctRule;
import org.apache.calcite.rel.rules.ValuesReduceRule;
-import
org.apache.ignite.internal.processors.query.calcite.rule.logical.IgniteFilterRule;
-import
org.apache.ignite.internal.processors.query.calcite.rule.logical.IgniteJoinRule;
-import
org.apache.ignite.internal.processors.query.calcite.rule.logical.IgniteProjectRule;
/**
*
@@ -161,7 +158,7 @@ public class IgniteRules {
public static final List<RelOptRule> IGNITE_LOGICAL_RULES =
ImmutableList.of(
IgniteFilterRule.INSTANCE,
IgniteProjectRule.INSTANCE,
- IgniteJoinRule.INSTANCE);
+ IgniteHashJoinRule.INSTANCE);
public static List<RelOptRule> logicalRules(Context ctx) {
return ImmutableList.<RelOptRule>builder()
diff --git
a/modules/calcite/src/main/java/org/apache/ignite/internal/processors/query/calcite/schema/IgniteTable.java
b/modules/calcite/src/main/java/org/apache/ignite/internal/processors/query/calcite/schema/IgniteTable.java
index 6d25e19..41ffb12 100644
---
a/modules/calcite/src/main/java/org/apache/ignite/internal/processors/query/calcite/schema/IgniteTable.java
+++
b/modules/calcite/src/main/java/org/apache/ignite/internal/processors/query/calcite/schema/IgniteTable.java
@@ -28,7 +28,7 @@ import org.apache.calcite.schema.TranslatableTable;
import org.apache.calcite.schema.impl.AbstractTable;
import org.apache.ignite.internal.processors.affinity.AffinityTopologyVersion;
import org.apache.ignite.internal.processors.query.calcite.rel.IgniteRel;
-import
org.apache.ignite.internal.processors.query.calcite.rel.logical.IgniteLogicalTableScan;
+import org.apache.ignite.internal.processors.query.calcite.rel.IgniteTableScan;
import
org.apache.ignite.internal.processors.query.calcite.splitter.PartitionsDistributionRegistry;
import
org.apache.ignite.internal.processors.query.calcite.splitter.SourceDistribution;
import
org.apache.ignite.internal.processors.query.calcite.trait.DistributionTrait;
@@ -73,7 +73,7 @@ public class IgniteTable extends AbstractTable implements
TranslatableTable {
RelOptCluster cluster = context.getCluster();
RelTraitSet traitSet =
cluster.traitSet().replace(IgniteRel.LOGICAL_CONVENTION)
.replaceIf(DistributionTraitDef.INSTANCE, () ->
distributionTrait(cluster.getPlanner().getContext()));
- return new IgniteLogicalTableScan(cluster, traitSet, relOptTable);
+ return new IgniteTableScan(cluster, traitSet, relOptTable);
}
public DistributionTrait distributionTrait(Context context) {
diff --git
a/modules/calcite/src/main/java/org/apache/ignite/internal/processors/query/calcite/splitter/Fragment.java
b/modules/calcite/src/main/java/org/apache/ignite/internal/processors/query/calcite/splitter/Fragment.java
index ffc6b48..2a98eaa 100644
---
a/modules/calcite/src/main/java/org/apache/ignite/internal/processors/query/calcite/splitter/Fragment.java
+++
b/modules/calcite/src/main/java/org/apache/ignite/internal/processors/query/calcite/splitter/Fragment.java
@@ -19,9 +19,9 @@ package
org.apache.ignite.internal.processors.query.calcite.splitter;
import org.apache.calcite.plan.Context;
import org.apache.calcite.rel.RelNode;
import org.apache.ignite.internal.processors.affinity.AffinityTopologyVersion;
-import org.apache.ignite.internal.processors.query.calcite.exchange.Receiver;
-import org.apache.ignite.internal.processors.query.calcite.exchange.Sender;
import
org.apache.ignite.internal.processors.query.calcite.metadata.RelMetadataQueryEx;
+import org.apache.ignite.internal.processors.query.calcite.rel.Receiver;
+import org.apache.ignite.internal.processors.query.calcite.rel.Sender;
import org.apache.ignite.internal.util.typedef.F;
/**
diff --git
a/modules/calcite/src/main/java/org/apache/ignite/internal/processors/query/calcite/splitter/SourceDistribution.java
b/modules/calcite/src/main/java/org/apache/ignite/internal/processors/query/calcite/splitter/SourceDistribution.java
index 02a5514..618b3d8 100644
---
a/modules/calcite/src/main/java/org/apache/ignite/internal/processors/query/calcite/splitter/SourceDistribution.java
+++
b/modules/calcite/src/main/java/org/apache/ignite/internal/processors/query/calcite/splitter/SourceDistribution.java
@@ -17,7 +17,7 @@
package org.apache.ignite.internal.processors.query.calcite.splitter;
import java.util.List;
-import org.apache.ignite.internal.processors.query.calcite.exchange.Receiver;
+import org.apache.ignite.internal.processors.query.calcite.rel.Receiver;
import org.apache.ignite.internal.util.GridIntList;
/**
diff --git
a/modules/calcite/src/main/java/org/apache/ignite/internal/processors/query/calcite/splitter/Splitter.java
b/modules/calcite/src/main/java/org/apache/ignite/internal/processors/query/calcite/splitter/Splitter.java
index fb1c730..31b8819 100644
---
a/modules/calcite/src/main/java/org/apache/ignite/internal/processors/query/calcite/splitter/Splitter.java
+++
b/modules/calcite/src/main/java/org/apache/ignite/internal/processors/query/calcite/splitter/Splitter.java
@@ -21,10 +21,10 @@ import org.apache.calcite.plan.RelOptCluster;
import org.apache.calcite.plan.RelTraitSet;
import org.apache.calcite.rel.RelNode;
import org.apache.calcite.rel.RelShuttleImpl;
-import org.apache.ignite.internal.processors.query.calcite.exchange.Receiver;
-import org.apache.ignite.internal.processors.query.calcite.exchange.Sender;
+import org.apache.ignite.internal.processors.query.calcite.rel.IgniteExchange;
import org.apache.ignite.internal.processors.query.calcite.rel.IgniteRel;
-import
org.apache.ignite.internal.processors.query.calcite.rel.logical.IgniteLogicalExchange;
+import org.apache.ignite.internal.processors.query.calcite.rel.Receiver;
+import org.apache.ignite.internal.processors.query.calcite.rel.Sender;
/**
*
@@ -43,8 +43,8 @@ public class Splitter extends RelShuttleImpl {
throw new AssertionError("Unexpected node: " + rel);
else if (rel instanceof Sender || rel instanceof Receiver)
throw new AssertionError("An attempt to split an already split
task.");
- else if (rel instanceof IgniteLogicalExchange) {
- IgniteLogicalExchange exchange = (IgniteLogicalExchange) rel;
+ else if (rel instanceof IgniteExchange) {
+ IgniteExchange exchange = (IgniteExchange) rel;
RelOptCluster cluster = exchange.getCluster();
RelTraitSet traitSet = exchange.getTraitSet();
diff --git
a/modules/calcite/src/main/java/org/apache/ignite/internal/processors/query/calcite/trait/DistributionTraitDef.java
b/modules/calcite/src/main/java/org/apache/ignite/internal/processors/query/calcite/trait/DistributionTraitDef.java
index ef614bc..76ff0fa 100644
---
a/modules/calcite/src/main/java/org/apache/ignite/internal/processors/query/calcite/trait/DistributionTraitDef.java
+++
b/modules/calcite/src/main/java/org/apache/ignite/internal/processors/query/calcite/trait/DistributionTraitDef.java
@@ -19,8 +19,8 @@ package
org.apache.ignite.internal.processors.query.calcite.trait;
import org.apache.calcite.plan.RelOptPlanner;
import org.apache.calcite.plan.RelTraitDef;
import org.apache.calcite.rel.RelNode;
+import org.apache.ignite.internal.processors.query.calcite.rel.IgniteExchange;
import org.apache.ignite.internal.processors.query.calcite.rel.IgniteRel;
-import
org.apache.ignite.internal.processors.query.calcite.rel.logical.IgniteLogicalExchange;
/**
*
@@ -51,7 +51,7 @@ public class DistributionTraitDef extends
RelTraitDef<DistributionTrait> {
case HASH:
case BROADCAST:
case SINGLE:
- return new IgniteLogicalExchange(rel.getCluster(),
rel.getTraitSet().replace(targetDist), rel);
+ return new IgniteExchange(rel.getCluster(),
rel.getTraitSet().replace(targetDist), rel);
case ANY:
return rel;
default: