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>