You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@phoenix.apache.org by ra...@apache.org on 2017/04/03 05:51:55 UTC
phoenix git commit: PHOENIX-3690 PHOENIX-3690 Support declaring
default values in Phoenix-Calcite: addendum to support new interface after
CALCITE-1702(Kevin Liew)
Repository: phoenix
Updated Branches:
refs/heads/calcite 463a52a43 -> cca7daaea
PHOENIX-3690 PHOENIX-3690 Support declaring default values in Phoenix-Calcite: addendum to support new interface after CALCITE-1702(Kevin Liew)
Project: http://git-wip-us.apache.org/repos/asf/phoenix/repo
Commit: http://git-wip-us.apache.org/repos/asf/phoenix/commit/cca7daae
Tree: http://git-wip-us.apache.org/repos/asf/phoenix/tree/cca7daae
Diff: http://git-wip-us.apache.org/repos/asf/phoenix/diff/cca7daae
Branch: refs/heads/calcite
Commit: cca7daaea02b61f93f23f2ec6828c8831350b29e
Parents: 463a52a
Author: Rajeshbabu Chintaguntla <ra...@apache.org>
Authored: Mon Apr 3 11:21:35 2017 +0530
Committer: Rajeshbabu Chintaguntla <ra...@apache.org>
Committed: Mon Apr 3 11:21:35 2017 +0530
----------------------------------------------------------------------
.../org/apache/phoenix/calcite/CalciteUtils.java | 4 ++--
.../org/apache/phoenix/calcite/PhoenixTable.java | 16 ++++++++--------
pom.xml | 2 +-
3 files changed, 11 insertions(+), 11 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/phoenix/blob/cca7daae/phoenix-core/src/main/java/org/apache/phoenix/calcite/CalciteUtils.java
----------------------------------------------------------------------
diff --git a/phoenix-core/src/main/java/org/apache/phoenix/calcite/CalciteUtils.java b/phoenix-core/src/main/java/org/apache/phoenix/calcite/CalciteUtils.java
index 0b098f0..32e89a4 100644
--- a/phoenix-core/src/main/java/org/apache/phoenix/calcite/CalciteUtils.java
+++ b/phoenix-core/src/main/java/org/apache/phoenix/calcite/CalciteUtils.java
@@ -1398,7 +1398,7 @@ public class CalciteUtils {
@SuppressWarnings("rawtypes")
public static RexNode convertColumnExpressionToLiteral(PColumn column,
- Expression defaultExpression, RelDataTypeFactory typeFactory, RexBuilder rexBuilder) {
+ Expression defaultExpression, RexBuilder rexBuilder) {
ImmutableBytesWritable key = new ImmutableBytesWritable();
defaultExpression.evaluate(null, key);
column.getDataType().coerceBytes(key, null,
@@ -1412,7 +1412,7 @@ public class CalciteUtils {
defaultExpression.getSortOrder(), defaultExpression.getMaxLength(),
defaultExpression.getScale());
RelDataType pDataTypeToRelDataType =
- CalciteUtils.pDataTypeToRelDataType(typeFactory,
+ CalciteUtils.pDataTypeToRelDataType(rexBuilder.getTypeFactory(),
defaultExpression.getDataType(), defaultExpression.getMaxLength(),
defaultExpression.getScale(), column.getArraySize());
return rexBuilder.makeLiteral((Comparable)object, pDataTypeToRelDataType,true);
http://git-wip-us.apache.org/repos/asf/phoenix/blob/cca7daae/phoenix-core/src/main/java/org/apache/phoenix/calcite/PhoenixTable.java
----------------------------------------------------------------------
diff --git a/phoenix-core/src/main/java/org/apache/phoenix/calcite/PhoenixTable.java b/phoenix-core/src/main/java/org/apache/phoenix/calcite/PhoenixTable.java
index 93e8be3..74d1b25 100644
--- a/phoenix-core/src/main/java/org/apache/phoenix/calcite/PhoenixTable.java
+++ b/phoenix-core/src/main/java/org/apache/phoenix/calcite/PhoenixTable.java
@@ -23,6 +23,7 @@ import org.apache.calcite.schema.Statistic;
import org.apache.calcite.schema.TranslatableTable;
import org.apache.calcite.schema.Wrapper;
import org.apache.calcite.schema.impl.AbstractTable;
+import org.apache.calcite.sql2rel.InitializerContext;
import org.apache.calcite.sql2rel.InitializerExpressionFactory;
import org.apache.calcite.sql2rel.NullInitializerExpressionFactory;
import org.apache.calcite.util.ImmutableBitSet;
@@ -204,31 +205,30 @@ public class PhoenixTable extends AbstractTable
return null;
}
- public static class PhoenixTableInitializerExpressionFactory extends
+ static class PhoenixTableInitializerExpressionFactory extends
NullInitializerExpressionFactory {
- private final RelDataTypeFactory typeFactory;
private final RexBuilder rexBuilder;
private final PhoenixConnection pc;
private final TableMapping tableMapping;
- public PhoenixTableInitializerExpressionFactory(RelDataTypeFactory typeFactory,
+ PhoenixTableInitializerExpressionFactory(RelDataTypeFactory typeFactory,
PhoenixConnection pc, TableMapping tableMapping) {
- super(typeFactory);
- this.typeFactory = typeFactory;
+ super();
this.rexBuilder = new RexBuilder(typeFactory);
this.pc = pc;
this.tableMapping = tableMapping;
}
- public RexNode newColumnDefaultValue(RelOptTable table, int iColumn) {
+ public RexNode newColumnDefaultValue(RelOptTable table, int iColumn,
+ InitializerContext context) {
PColumn column = tableMapping.getMappedColumns().get(iColumn);
String expressionStr = column.getExpressionStr();
if(expressionStr == null) {
- return super.newColumnDefaultValue(table, iColumn);
+ return super.newColumnDefaultValue(table, iColumn, context);
}
Expression defaultExpression = CalciteUtils.parseExpressionFromStr(expressionStr, pc);
return CalciteUtils.convertColumnExpressionToLiteral(column, defaultExpression,
- typeFactory, rexBuilder);
+ rexBuilder);
}
}
}
http://git-wip-us.apache.org/repos/asf/phoenix/blob/cca7daae/pom.xml
----------------------------------------------------------------------
diff --git a/pom.xml b/pom.xml
index 10487b5..95dfe12 100644
--- a/pom.xml
+++ b/pom.xml
@@ -99,7 +99,7 @@
<jodatime.version>1.6</jodatime.version>
<joni.version>2.1.2</joni.version>
<avatica.version>1.9.0</avatica.version>
- <calcite.version>1.12.0-SNAPSHOT</calcite.version>
+ <calcite.version>1.13.0-SNAPSHOT</calcite.version>
<jettyVersion>8.1.7.v20120910</jettyVersion>
<tephra.version>0.9.0-incubating</tephra.version>
<spark.version>2.0.2</spark.version>