diff --git a/pom.xml b/pom.xml
index 85f1222..5187df5 100644
--- a/pom.xml
+++ b/pom.xml
@@ -115,10 +115,10 @@
3.5.2
1.5.6
0.1
- 1.9.0
+ 1.10.0
1.7.7
0.8.0.RELEASE
- 1.12.0
+ 1.13.0-SNAPSHOT
4.2.4
4.1.17
4.1.19
@@ -131,7 +131,7 @@
3.0.1
2.4
2.6
- 3.1
+ 3.2
1.5.4
1.4
10.10.2.0
diff --git a/ql/src/java/org/apache/hadoop/hive/ql/optimizer/calcite/HiveCalciteUtil.java b/ql/src/java/org/apache/hadoop/hive/ql/optimizer/calcite/HiveCalciteUtil.java
index e339d0a..5f34e8d 100644
--- a/ql/src/java/org/apache/hadoop/hive/ql/optimizer/calcite/HiveCalciteUtil.java
+++ b/ql/src/java/org/apache/hadoop/hive/ql/optimizer/calcite/HiveCalciteUtil.java
@@ -89,6 +89,7 @@
import com.google.common.collect.Lists;
import com.google.common.collect.Maps;
import com.google.common.collect.Sets;
+import org.apache.calcite.rex.RexTableInputRef;
/**
* Generic utility functions needed for Calcite based Hive CBO.
@@ -1080,6 +1081,11 @@ public Boolean visitSubQuery(RexSubQuery subQuery) {
public Boolean visitPatternFieldRef(RexPatternFieldRef fieldRef) {
return false;
}
+
+ @Override
+ public Boolean visitTableInputRef(RexTableInputRef fieldRef) {
+ return false;
+ }
}
public static Set getInputRefs(RexNode expr) {
diff --git a/ql/src/java/org/apache/hadoop/hive/ql/optimizer/calcite/translator/RexNodeConverter.java b/ql/src/java/org/apache/hadoop/hive/ql/optimizer/calcite/translator/RexNodeConverter.java
index 52ca3b0..92444c4 100644
--- a/ql/src/java/org/apache/hadoop/hive/ql/optimizer/calcite/translator/RexNodeConverter.java
+++ b/ql/src/java/org/apache/hadoop/hive/ql/optimizer/calcite/translator/RexNodeConverter.java
@@ -661,14 +661,14 @@ protected RexNode convert(ExprNodeConstantDesc literal) throws CalciteSemanticEx
case DATE:
// The Calcite literal is in GMT, this will be converted back to JVM locale
// by ASTBuilder.literal during Calcite->Hive plan conversion
- final Calendar cal = Calendar.getInstance(DateTimeUtils.GMT_ZONE, Locale.getDefault());
+ final Calendar cal = Calendar.getInstance(DateTimeUtils.UTC_ZONE, Locale.getDefault());
cal.setTime((Date) value);
calciteLiteral = rexBuilder.makeDateLiteral(cal);
break;
case TIMESTAMP:
// The Calcite literal is in GMT, this will be converted back to JVM locale
// by ASTBuilder.literal during Calcite->Hive plan conversion
- final Calendar calt = Calendar.getInstance(DateTimeUtils.GMT_ZONE, Locale.getDefault());
+ final Calendar calt = Calendar.getInstance(DateTimeUtils.UTC_ZONE, Locale.getDefault());
if (value instanceof Calendar) {
final Calendar c = (Calendar) value;
long timeMs = c.getTimeInMillis();
diff --git a/ql/src/java/org/apache/hadoop/hive/ql/parse/CalcitePlanner.java b/ql/src/java/org/apache/hadoop/hive/ql/parse/CalcitePlanner.java
index 348331e..db5e10d 100644
--- a/ql/src/java/org/apache/hadoop/hive/ql/parse/CalcitePlanner.java
+++ b/ql/src/java/org/apache/hadoop/hive/ql/parse/CalcitePlanner.java
@@ -3446,7 +3446,7 @@ private int getWindowSpecIndx(ASTNode wndAST) {
w = cluster.getRexBuilder().makeOver(calciteAggFnRetType, calciteAggFn, calciteAggFnArgs,
partitionKeys, ImmutableList. copyOf(orderKeys), lowerBound,
- upperBound, isRows, true, false);
+ upperBound, isRows, true, false, false);
} else {
// TODO: Convert to Semantic Exception
throw new RuntimeException("Unsupported window Spec");