hive git commit: HIVE-11462: Constant fold struct() UDF (Gopal V, reviewed by Hari Sankar Sivarama Subramaniyan)

2015-08-12 Thread gopalv
Repository: hive
Updated Branches:
  refs/heads/branch-1 d9b5d5322 -> 8a99674dc


HIVE-11462: Constant fold struct() UDF (Gopal V, reviewed by Hari Sankar 
Sivarama Subramaniyan)


Project: http://git-wip-us.apache.org/repos/asf/hive/repo
Commit: http://git-wip-us.apache.org/repos/asf/hive/commit/8a99674d
Tree: http://git-wip-us.apache.org/repos/asf/hive/tree/8a99674d
Diff: http://git-wip-us.apache.org/repos/asf/hive/diff/8a99674d

Branch: refs/heads/branch-1
Commit: 8a99674dc29e9b0b528bc14e95c0e35a0dcf08d7
Parents: d9b5d53
Author: Gopal V 
Authored: Wed Aug 12 16:45:58 2015 -0700
Committer: Gopal V 
Committed: Wed Aug 12 18:25:48 2015 -0700

--
 .../optimizer/ConstantPropagateProcFactory.java | 42 +++-
 .../hive/ql/plan/ExprNodeConstantDesc.java  | 29 --
 .../hive/ql/udf/generic/GenericUDFIn.java   |  3 +-
 .../hive/ql/udf/generic/GenericUDFStruct.java   | 25 +---
 .../test/results/clientpositive/null_cast.q.out |  2 +-
 .../test/results/clientpositive/structin.q.out  |  2 +-
 .../results/clientpositive/udf_inline.q.out |  2 +-
 .../results/clientpositive/udf_struct.q.out |  2 +-
 .../test/results/clientpositive/udf_union.q.out |  2 +-
 .../objectinspector/ObjectInspectorUtils.java   |  3 ++
 10 files changed, 89 insertions(+), 23 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/hive/blob/8a99674d/ql/src/java/org/apache/hadoop/hive/ql/optimizer/ConstantPropagateProcFactory.java
--
diff --git 
a/ql/src/java/org/apache/hadoop/hive/ql/optimizer/ConstantPropagateProcFactory.java
 
b/ql/src/java/org/apache/hadoop/hive/ql/optimizer/ConstantPropagateProcFactory.java
index 286c042..fd0058a 100644
--- 
a/ql/src/java/org/apache/hadoop/hive/ql/optimizer/ConstantPropagateProcFactory.java
+++ 
b/ql/src/java/org/apache/hadoop/hive/ql/optimizer/ConstantPropagateProcFactory.java
@@ -74,10 +74,14 @@ import 
org.apache.hadoop.hive.ql.udf.generic.GenericUDFOPNotEqual;
 import org.apache.hadoop.hive.ql.udf.generic.GenericUDFOPNotNull;
 import org.apache.hadoop.hive.ql.udf.generic.GenericUDFOPNull;
 import org.apache.hadoop.hive.ql.udf.generic.GenericUDFOPOr;
+import org.apache.hadoop.hive.ql.udf.generic.GenericUDFStruct;
 import org.apache.hadoop.hive.ql.udf.generic.GenericUDFWhen;
 import org.apache.hadoop.hive.serde.serdeConstants;
+import org.apache.hadoop.hive.serde2.objectinspector.ConstantObjectInspector;
 import org.apache.hadoop.hive.serde2.objectinspector.ObjectInspector;
+import org.apache.hadoop.hive.serde2.objectinspector.ObjectInspector.Category;
 import org.apache.hadoop.hive.serde2.objectinspector.ObjectInspectorConverters;
+import 
org.apache.hadoop.hive.serde2.objectinspector.StandardConstantStructObjectInspector;
 import 
org.apache.hadoop.hive.serde2.objectinspector.ObjectInspectorConverters.Converter;
 import org.apache.hadoop.hive.serde2.objectinspector.ObjectInspectorUtils;
 import org.apache.hadoop.hive.serde2.objectinspector.PrimitiveObjectInspector;
@@ -695,6 +699,10 @@ public final class ConstantPropagateProcFactory {
 return null;
   }
 }
+if (constant.getTypeInfo().getCategory() != Category.PRIMITIVE) {
+  // nested complex types cannot be folded cleanly 
+  return null;
+}
 Object value = constant.getValue();
 PrimitiveTypeInfo pti = (PrimitiveTypeInfo) constant.getTypeInfo();
 Object writableValue = null == value ? value :
@@ -711,6 +719,10 @@ public final class ConstantPropagateProcFactory {
   return null;
 }
 ExprNodeConstantDesc constant = (ExprNodeConstantDesc) evaluatedFn;
+if (constant.getTypeInfo().getCategory() != Category.PRIMITIVE) {
+  // nested complex types cannot be folded cleanly
+  return null;
+}
 Object writableValue = 
PrimitiveObjectInspectorFactory.getPrimitiveJavaObjectInspector(
   (PrimitiveTypeInfo) 
constant.getTypeInfo()).getPrimitiveWritableObject(constant.getValue());
 arguments[i] = new DeferredJavaObject(writableValue);
@@ -725,26 +737,38 @@ public final class ConstantPropagateProcFactory {
   Object o = udf.evaluate(arguments);
   LOG.debug(udf.getClass().getName() + "(" + exprs + ")=" + o);
   if (o == null) {
-return new 
ExprNodeConstantDesc(TypeInfoUtils.getTypeInfoFromObjectInspector(oi), o);
+return new ExprNodeConstantDesc(
+TypeInfoUtils.getTypeInfoFromObjectInspector(oi), o);
   }
   Class clz = o.getClass();
   if (PrimitiveObjectInspectorUtils.isPrimitiveWritableClass(clz)) {
 PrimitiveObjectInspector poi = (PrimitiveObjectInspector) oi;
 TypeInfo typeInfo = poi.getTypeInfo();
 o = poi.getPrimitiveJavaObject(o);
-if (typeInfo.getTypeName().contains(s

hive git commit: HIVE-11462: Constant fold struct() UDF (Gopal V, reviewed by Hari Sankar Sivarama Subramaniyan)

2015-08-12 Thread gopalv
Repository: hive
Updated Branches:
  refs/heads/master 0140df748 -> 16546cc4b


HIVE-11462: Constant fold struct() UDF (Gopal V, reviewed by Hari Sankar 
Sivarama Subramaniyan)


Project: http://git-wip-us.apache.org/repos/asf/hive/repo
Commit: http://git-wip-us.apache.org/repos/asf/hive/commit/16546cc4
Tree: http://git-wip-us.apache.org/repos/asf/hive/tree/16546cc4
Diff: http://git-wip-us.apache.org/repos/asf/hive/diff/16546cc4

Branch: refs/heads/master
Commit: 16546cc4b8f6944f5ea4ad13f480dcc402e6757c
Parents: 0140df7
Author: Gopal V 
Authored: Wed Aug 12 16:45:58 2015 -0700
Committer: Gopal V 
Committed: Wed Aug 12 16:45:58 2015 -0700

--
 .../optimizer/ConstantPropagateProcFactory.java | 40 +++-
 .../hive/ql/plan/ExprNodeConstantDesc.java  | 29 --
 .../hive/ql/udf/generic/GenericUDFIn.java   |  3 +-
 .../hive/ql/udf/generic/GenericUDFStruct.java   | 25 +---
 .../test/results/clientpositive/null_cast.q.out |  2 +-
 .../test/results/clientpositive/structin.q.out  |  2 +-
 .../results/clientpositive/udf_inline.q.out |  2 +-
 .../results/clientpositive/udf_struct.q.out |  2 +-
 .../test/results/clientpositive/udf_union.q.out |  2 +-
 .../objectinspector/ObjectInspectorUtils.java   |  3 ++
 10 files changed, 87 insertions(+), 23 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/hive/blob/16546cc4/ql/src/java/org/apache/hadoop/hive/ql/optimizer/ConstantPropagateProcFactory.java
--
diff --git 
a/ql/src/java/org/apache/hadoop/hive/ql/optimizer/ConstantPropagateProcFactory.java
 
b/ql/src/java/org/apache/hadoop/hive/ql/optimizer/ConstantPropagateProcFactory.java
index cf10c52..55ad0ce 100644
--- 
a/ql/src/java/org/apache/hadoop/hive/ql/optimizer/ConstantPropagateProcFactory.java
+++ 
b/ql/src/java/org/apache/hadoop/hive/ql/optimizer/ConstantPropagateProcFactory.java
@@ -75,10 +75,14 @@ import 
org.apache.hadoop.hive.ql.udf.generic.GenericUDFOPNotEqual;
 import org.apache.hadoop.hive.ql.udf.generic.GenericUDFOPNotNull;
 import org.apache.hadoop.hive.ql.udf.generic.GenericUDFOPNull;
 import org.apache.hadoop.hive.ql.udf.generic.GenericUDFOPOr;
+import org.apache.hadoop.hive.ql.udf.generic.GenericUDFStruct;
 import org.apache.hadoop.hive.ql.udf.generic.GenericUDFWhen;
 import org.apache.hadoop.hive.serde.serdeConstants;
+import org.apache.hadoop.hive.serde2.objectinspector.ConstantObjectInspector;
 import org.apache.hadoop.hive.serde2.objectinspector.ObjectInspector;
+import org.apache.hadoop.hive.serde2.objectinspector.ObjectInspector.Category;
 import org.apache.hadoop.hive.serde2.objectinspector.ObjectInspectorConverters;
+import 
org.apache.hadoop.hive.serde2.objectinspector.StandardConstantStructObjectInspector;
 import 
org.apache.hadoop.hive.serde2.objectinspector.ObjectInspectorConverters.Converter;
 import org.apache.hadoop.hive.serde2.objectinspector.ObjectInspectorUtils;
 import org.apache.hadoop.hive.serde2.objectinspector.PrimitiveObjectInspector;
@@ -758,6 +762,10 @@ public final class ConstantPropagateProcFactory {
 return null;
   }
 }
+if (constant.getTypeInfo().getCategory() != Category.PRIMITIVE) {
+  // nested complex types cannot be folded cleanly 
+  return null;
+}
 Object value = constant.getValue();
 PrimitiveTypeInfo pti = (PrimitiveTypeInfo) constant.getTypeInfo();
 Object writableValue = null == value ? value :
@@ -774,6 +782,10 @@ public final class ConstantPropagateProcFactory {
   return null;
 }
 ExprNodeConstantDesc constant = (ExprNodeConstantDesc) evaluatedFn;
+if (constant.getTypeInfo().getCategory() != Category.PRIMITIVE) {
+  // nested complex types cannot be folded cleanly
+  return null;
+}
 Object writableValue = 
PrimitiveObjectInspectorFactory.getPrimitiveJavaObjectInspector(
   (PrimitiveTypeInfo) 
constant.getTypeInfo()).getPrimitiveWritableObject(constant.getValue());
 arguments[i] = new DeferredJavaObject(writableValue);
@@ -790,28 +802,38 @@ public final class ConstantPropagateProcFactory {
 LOG.debug(udf.getClass().getName() + "(" + exprs + ")=" + o);
   }
   if (o == null) {
-return new 
ExprNodeConstantDesc(TypeInfoUtils.getTypeInfoFromObjectInspector(oi), o);
+return new ExprNodeConstantDesc(
+TypeInfoUtils.getTypeInfoFromObjectInspector(oi), o);
   }
   Class clz = o.getClass();
   if (PrimitiveObjectInspectorUtils.isPrimitiveWritableClass(clz)) {
 PrimitiveObjectInspector poi = (PrimitiveObjectInspector) oi;
 TypeInfo typeInfo = poi.getTypeInfo();
 o = poi.getPrimitiveJavaObject(o);
-if (typeInfo.getTypeName().contains(serdeConstants.DECIMAL_TYPE_NAME) 
||

hive git commit: HIVE-10183:: [CBO] self-join failing in a test case (Ashutosh Chauhan via Pengcheng Xiong)

2015-08-12 Thread pxiong
Repository: hive
Updated Branches:
  refs/heads/branch-1.0 4e7260ba3 -> d5dcd3e3e


HIVE-10183:: [CBO] self-join failing in a test case (Ashutosh Chauhan via 
Pengcheng Xiong)


Project: http://git-wip-us.apache.org/repos/asf/hive/repo
Commit: http://git-wip-us.apache.org/repos/asf/hive/commit/d5dcd3e3
Tree: http://git-wip-us.apache.org/repos/asf/hive/tree/d5dcd3e3
Diff: http://git-wip-us.apache.org/repos/asf/hive/diff/d5dcd3e3

Branch: refs/heads/branch-1.0
Commit: d5dcd3e3eb2a5c8d932862ff43a5085cb8805186
Parents: 4e7260b
Author: Pengcheng Xiong 
Authored: Wed Aug 12 13:26:51 2015 -0700
Committer: Pengcheng Xiong 
Committed: Wed Aug 12 13:26:51 2015 -0700

--
 .../translator/PlanModifierForASTConv.java  | 29 ++--
 1 file changed, 26 insertions(+), 3 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/hive/blob/d5dcd3e3/ql/src/java/org/apache/hadoop/hive/ql/optimizer/optiq/translator/PlanModifierForASTConv.java
--
diff --git 
a/ql/src/java/org/apache/hadoop/hive/ql/optimizer/optiq/translator/PlanModifierForASTConv.java
 
b/ql/src/java/org/apache/hadoop/hive/ql/optimizer/optiq/translator/PlanModifierForASTConv.java
index 57f030b..98f3e26 100644
--- 
a/ql/src/java/org/apache/hadoop/hive/ql/optimizer/optiq/translator/PlanModifierForASTConv.java
+++ 
b/ql/src/java/org/apache/hadoop/hive/ql/optimizer/optiq/translator/PlanModifierForASTConv.java
@@ -30,6 +30,7 @@ import 
org.apache.hadoop.hive.ql.optimizer.optiq.OptiqSemanticException;
 import org.apache.hadoop.hive.ql.optimizer.optiq.reloperators.HiveAggregateRel;
 import org.apache.hadoop.hive.ql.optimizer.optiq.reloperators.HiveProjectRel;
 import org.apache.hadoop.hive.ql.optimizer.optiq.reloperators.HiveSortRel;
+import org.apache.hadoop.hive.ql.optimizer.optiq.reloperators.HiveTableScanRel;
 import org.apache.hadoop.hive.serde2.typeinfo.TypeInfoFactory;
 import org.eigenbase.rel.AggregateCall;
 import org.eigenbase.rel.AggregateRelBase;
@@ -53,6 +54,7 @@ import org.eigenbase.reltype.RelDataTypeFactory;
 import org.eigenbase.rex.RexNode;
 import org.eigenbase.sql.SqlKind;
 import org.eigenbase.util.Pair;
+import org.apache.hadoop.hive.ql.optimizer.optiq.RelOptHiveTable;
 
 import com.google.common.collect.ImmutableList;
 import com.google.common.collect.ImmutableMap;
@@ -94,6 +96,23 @@ public class PlanModifierForASTConv {
 return newTopNode;
   }
 
+  private static String getTblAlias(RelNode rel) {
+
+if (null == rel) {
+  return null;
+}
+if (rel instanceof HiveTableScanRel) {
+  return 
((RelOptHiveTable)((HiveTableScanRel)rel).getTable()).getTableAlias();
+}
+if (rel instanceof HiveProjectRel) {
+  return null;
+}
+if (rel.getInputs().size() == 1) {
+  return getTblAlias(rel.getInput(0));
+}
+return null;
+  }
+
   private static void convertOpTree(RelNode rel, RelNode parent) {
 
 if (rel instanceof EmptyRel) {
@@ -104,10 +123,14 @@ public class PlanModifierForASTConv {
   if (!validJoinParent(rel, parent)) {
 introduceDerivedTable(rel, parent);
   }
+  String leftChild = getTblAlias(((JoinRelBase)rel).getLeft());
+  if (null != leftChild && 
leftChild.equalsIgnoreCase(getTblAlias(((JoinRelBase)rel).getRight( {
+// introduce derived table above one child, if this is self-join
+// since user provided aliases are lost at this point.
+introduceDerivedTable(((JoinRelBase)rel).getLeft(), rel);
+  }
 } else if (rel instanceof MultiJoinRel) {
-  throw new RuntimeException("Found MultiJoinRel");
-} else if (rel instanceof OneRowRelBase) {
-  throw new RuntimeException("Found OneRowRelBase");
+  throw new RuntimeException("Found MultiJoin");
 } else if (rel instanceof RelSubset) {
   throw new RuntimeException("Found RelSubset");
 } else if (rel instanceof SetOpRel) {



hive git commit: HIVE-9437 - Beeline does not add any existing HADOOP_CLASSPATH (Ashish via Xuefu)

2015-08-12 Thread jdere
Repository: hive
Updated Branches:
  refs/heads/branch-1.0 35914dbcd -> 4e7260ba3


HIVE-9437 - Beeline does not add any existing HADOOP_CLASSPATH (Ashish via 
Xuefu)

git-svn-id: https://svn.apache.org/repos/asf/hive/trunk@1659434 
13f79535-47bb-0310-9956-ffa450edef68


Project: http://git-wip-us.apache.org/repos/asf/hive/repo
Commit: http://git-wip-us.apache.org/repos/asf/hive/commit/4e7260ba
Tree: http://git-wip-us.apache.org/repos/asf/hive/tree/4e7260ba
Diff: http://git-wip-us.apache.org/repos/asf/hive/diff/4e7260ba

Branch: refs/heads/branch-1.0
Commit: 4e7260ba331f36ceaf8c7f9a2795fe2bf71e81f5
Parents: 35914db
Author: Brock Noland 
Authored: Thu Feb 12 23:23:18 2015 +
Committer: Jason Dere 
Committed: Wed Aug 12 12:43:44 2015 -0700

--
 bin/ext/beeline.sh | 7 ++-
 1 file changed, 6 insertions(+), 1 deletion(-)
--


http://git-wip-us.apache.org/repos/asf/hive/blob/4e7260ba/bin/ext/beeline.sh
--
diff --git a/bin/ext/beeline.sh b/bin/ext/beeline.sh
index a957fe1..ab3dc1a 100644
--- a/bin/ext/beeline.sh
+++ b/bin/ext/beeline.sh
@@ -25,7 +25,12 @@ beeline () {
   superCsvJarPath=`ls ${HIVE_LIB}/super-csv-*.jar`
   jlineJarPath=`ls ${HIVE_LIB}/jline-*.jar`
   jdbcStandaloneJarPath=`ls ${HIVE_LIB}/hive-jdbc-*-standalone.jar`
-  export 
HADOOP_CLASSPATH=${HIVE_CONF_DIR}:${beelineJarPath}:${superCsvJarPath}:${jlineJarPath}:${jdbcStandaloneJarPath}
+  hadoopClasspath=""
+  if [[ -n "${HADOOP_CLASSPATH}" ]]
+  then
+hadoopClasspath="${HADOOP_CLASSPATH}:"
+  fi
+  export 
HADOOP_CLASSPATH="${hadoopClasspath}${HIVE_CONF_DIR}:${beelineJarPath}:${superCsvJarPath}:${jlineJarPath}:${jdbcStandaloneJarPath}"
   export HADOOP_CLIENT_OPTS="$HADOOP_CLIENT_OPTS 
-Dlog4j.configuration=beeline-log4j.properties "
 
   exec $HADOOP jar ${beelineJarPath} $CLASS $HIVE_OPTS "$@"



hive git commit: HIVE-9622 - Getting NPE when trying to restart HS2 when metastore is configured to use org.apache.hadoop.hive.thrift.DBTokenStore (Aihua via Brock)

2015-08-12 Thread jdere
Repository: hive
Updated Branches:
  refs/heads/branch-1.0 a4eb78c82 -> 35914dbcd


HIVE-9622 - Getting NPE when trying to restart HS2 when metastore is configured 
to use org.apache.hadoop.hive.thrift.DBTokenStore (Aihua via Brock)


Project: http://git-wip-us.apache.org/repos/asf/hive/repo
Commit: http://git-wip-us.apache.org/repos/asf/hive/commit/35914dbc
Tree: http://git-wip-us.apache.org/repos/asf/hive/tree/35914dbc
Diff: http://git-wip-us.apache.org/repos/asf/hive/diff/35914dbc

Branch: refs/heads/branch-1.0
Commit: 35914dbcd41bc9eb71e1f26e9a2b9ea2807c656b
Parents: a4eb78c
Author: Jason Dere 
Authored: Wed Aug 12 12:39:09 2015 -0700
Committer: Jason Dere 
Committed: Wed Aug 12 12:39:09 2015 -0700

--
 .../hive/minikdc/TestHiveAuthFactory.java   | 69 
 .../hive/service/auth/HiveAuthFactory.java  | 13 +++-
 2 files changed, 80 insertions(+), 2 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/hive/blob/35914dbc/itests/hive-minikdc/src/test/java/org/apache/hive/minikdc/TestHiveAuthFactory.java
--
diff --git 
a/itests/hive-minikdc/src/test/java/org/apache/hive/minikdc/TestHiveAuthFactory.java
 
b/itests/hive-minikdc/src/test/java/org/apache/hive/minikdc/TestHiveAuthFactory.java
new file mode 100644
index 000..38601b8
--- /dev/null
+++ 
b/itests/hive-minikdc/src/test/java/org/apache/hive/minikdc/TestHiveAuthFactory.java
@@ -0,0 +1,69 @@
+/**
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements.  See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership.  The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License.  You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+package org.apache.hive.minikdc;
+
+import org.junit.Assert;
+import org.apache.hadoop.hive.conf.HiveConf;
+import org.apache.hadoop.hive.conf.HiveConf.ConfVars;
+import org.apache.hive.service.auth.HiveAuthFactory;
+import org.apache.hadoop.hive.thrift.DBTokenStore;
+import org.junit.AfterClass;
+import org.junit.BeforeClass;
+import org.junit.Test;
+
+
+public class TestHiveAuthFactory {
+  private static HiveConf hiveConf;
+  private static MiniHiveKdc miniHiveKdc = null;
+
+  @BeforeClass
+  public static void setUp() throws Exception {
+hiveConf = new HiveConf();
+miniHiveKdc = MiniHiveKdc.getMiniHiveKdc(hiveConf);
+  }
+
+  @AfterClass
+  public static void tearDown() throws Exception {
+  }
+
+  /**
+   * Verify that delegation token manager is started with no exception
+   * @throws Exception
+   */
+  @Test
+  public void testStartTokenManager() throws Exception {
+hiveConf.setVar(ConfVars.HIVE_SERVER2_AUTHENTICATION, 
HiveAuthFactory.AuthTypes.KERBEROS.name());
+hiveConf.setVar(ConfVars.METASTORE_CLUSTER_DELEGATION_TOKEN_STORE_CLS, 
DBTokenStore.class.getName());
+String principalName = miniHiveKdc.getFullHiveServicePrincipal();
+System.out.println("Principal: " + principalName);
+
+hiveConf.setVar(ConfVars.HIVE_SERVER2_KERBEROS_PRINCIPAL, principalName);
+String keyTabFile = 
miniHiveKdc.getKeyTabFile(miniHiveKdc.getHiveServicePrincipal());
+System.out.println("keyTabFile: " + keyTabFile);
+Assert.assertNotNull(keyTabFile);
+hiveConf.setVar(ConfVars.HIVE_SERVER2_KERBEROS_KEYTAB, keyTabFile);
+
+System.out.println("rawStoreClassName =" +  
hiveConf.getVar(ConfVars.METASTORE_RAW_STORE_IMPL));
+
+HiveAuthFactory authFactory = new HiveAuthFactory(hiveConf);
+Assert.assertNotNull(authFactory);
+// In Hive-1.0, HadoopThriftAuthBridge23 is using its parent class (20S) 
Server
+
Assert.assertEquals("org.apache.hadoop.hive.thrift.HadoopThriftAuthBridge20S$Server$TUGIAssumingTransportFactory",
 
+authFactory.getAuthTransFactory().getClass().getName());
+  }
+}

http://git-wip-us.apache.org/repos/asf/hive/blob/35914dbc/service/src/java/org/apache/hive/service/auth/HiveAuthFactory.java
--
diff --git a/service/src/java/org/apache/hive/service/auth/HiveAuthFactory.java 
b/service/src/java/org/apache/hive/service/auth/HiveAuthFactory.java
index f8daf1a..406ab41 100644
--- a/service/src/java/org/apache/hive/service/auth/HiveAuthFactory.java
+++ b/service/src/java/org/apache/hive/service/au

hive git commit: HIVE-11348: Support START TRANSACTION/COMMIT/ROLLBACK commands: support SQL2011 reserved keywords (Pengcheng Xiong reviewed by Eugene Koifman)

2015-08-12 Thread pxiong
Repository: hive
Updated Branches:
  refs/heads/branch-1 425273eed -> d9b5d5322


HIVE-11348: Support START TRANSACTION/COMMIT/ROLLBACK commands: support SQL2011 
reserved keywords (Pengcheng Xiong reviewed by Eugene Koifman)


Project: http://git-wip-us.apache.org/repos/asf/hive/repo
Commit: http://git-wip-us.apache.org/repos/asf/hive/commit/d9b5d532
Tree: http://git-wip-us.apache.org/repos/asf/hive/tree/d9b5d532
Diff: http://git-wip-us.apache.org/repos/asf/hive/diff/d9b5d532

Branch: refs/heads/branch-1
Commit: d9b5d5322b8c93d56888f25d5bab473d6fe295b7
Parents: 425273e
Author: Pengcheng Xiong 
Authored: Wed Aug 12 10:04:54 2015 -0700
Committer: Pengcheng Xiong 
Committed: Wed Aug 12 11:11:18 2015 -0700

--
 .../apache/hadoop/hive/ql/parse/IdentifiersParser.g | 16 ++--
 1 file changed, 10 insertions(+), 6 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/hive/blob/d9b5d532/ql/src/java/org/apache/hadoop/hive/ql/parse/IdentifiersParser.g
--
diff --git a/ql/src/java/org/apache/hadoop/hive/ql/parse/IdentifiersParser.g 
b/ql/src/java/org/apache/hadoop/hive/ql/parse/IdentifiersParser.g
index 501287d..64af7d1 100644
--- a/ql/src/java/org/apache/hadoop/hive/ql/parse/IdentifiersParser.g
+++ b/ql/src/java/org/apache/hadoop/hive/ql/parse/IdentifiersParser.g
@@ -614,7 +614,13 @@ principalIdentifier
 | QuotedIdentifier
 ;
 
-//the new version of nonReserved + sql11ReservedKeywordsUsedAsIdentifier = old 
version of nonReserved 
+//The new version of nonReserved + sql11ReservedKeywordsUsedAsIdentifier = old 
version of nonReserved
+//Non reserved keywords are basically the keywords that can be used as 
identifiers.
+//All the KW_* are automatically not only keywords, but also reserved keywords.
+//That means, they can NOT be used as identifiers.
+//If you would like to use them as identifiers, put them in the nonReserved 
list below.
+//If you are not sure, please refer to the SQL2011 column in
+//http://www.postgresql.org/docs/9.5/static/sql-keywords-appendix.html
 nonReserved
 :
 KW_ADD | KW_ADMIN | KW_AFTER | KW_ANALYZE | KW_ARCHIVE | KW_ASC | 
KW_BEFORE | KW_BUCKET | KW_BUCKETS
@@ -636,11 +642,7 @@ nonReserved
 | KW_TINYINT | KW_TOUCH | KW_TRANSACTIONS | KW_UNARCHIVE | KW_UNDO | 
KW_UNIONTYPE | KW_UNLOCK | KW_UNSET
 | KW_UNSIGNED | KW_URI | KW_USE | KW_UTC | KW_UTCTIMESTAMP | KW_VALUE_TYPE 
| KW_VIEW | KW_WHILE | KW_YEAR
 | KW_WORK
-| KW_START
 | KW_TRANSACTION
-| KW_COMMIT
-| KW_ROLLBACK
-| KW_ONLY
 | KW_WRITE
 | KW_ISOLATION
 | KW_LEVEL
@@ -648,13 +650,15 @@ nonReserved
 | KW_AUTOCOMMIT
 ;
 
-//The following SQL2011 reserved keywords are used as cast function name only, 
it is a subset of the sql11ReservedKeywordsUsedAsIdentifier.
+//The following SQL2011 reserved keywords are used as cast function name only, 
but not as identifiers.
 sql11ReservedKeywordsUsedAsCastFunctionName
 :
 KW_BIGINT | KW_BINARY | KW_BOOLEAN | KW_CURRENT_DATE | 
KW_CURRENT_TIMESTAMP | KW_DATE | KW_DOUBLE | KW_FLOAT | KW_INT | KW_SMALLINT | 
KW_TIMESTAMP
 ;
 
 //The following SQL2011 reserved keywords are used as identifiers in many q 
tests, they may be added back due to backward compatibility.
+//We are planning to remove the following whole list after several releases.
+//Thus, please do not change the following list unless you know what to do.
 sql11ReservedKeywordsUsedAsIdentifier
 :
 KW_ALL | KW_ALTER | KW_ARRAY | KW_AS | KW_AUTHORIZATION | KW_BETWEEN | 
KW_BIGINT | KW_BINARY | KW_BOOLEAN 



hive git commit: HIVE-11480: CBO: Calcite Operator To Hive Operator (Calcite Return Path): char/varchar as input to GenericUDAF (Pengcheng Xiong, reviewed by Jesus Camacho Rodriguez)

2015-08-12 Thread pxiong
Repository: hive
Updated Branches:
  refs/heads/master c4ceefb4c -> 0140df748


HIVE-11480: CBO: Calcite Operator To Hive Operator (Calcite Return Path): 
char/varchar as input to GenericUDAF (Pengcheng Xiong, reviewed by Jesus 
Camacho Rodriguez)


Project: http://git-wip-us.apache.org/repos/asf/hive/repo
Commit: http://git-wip-us.apache.org/repos/asf/hive/commit/0140df74
Tree: http://git-wip-us.apache.org/repos/asf/hive/tree/0140df74
Diff: http://git-wip-us.apache.org/repos/asf/hive/diff/0140df74

Branch: refs/heads/master
Commit: 0140df748f6714cc327132f008a13f6af5e41397
Parents: c4ceefb
Author: Pengcheng Xiong 
Authored: Wed Aug 12 10:43:35 2015 -0700
Committer: Pengcheng Xiong 
Committed: Wed Aug 12 10:43:35 2015 -0700

--
 .../java/org/apache/hadoop/hive/ql/udf/generic/GenericUDAFStd.java | 2 ++
 .../org/apache/hadoop/hive/ql/udf/generic/GenericUDAFVariance.java | 2 ++
 2 files changed, 4 insertions(+)
--


http://git-wip-us.apache.org/repos/asf/hive/blob/0140df74/ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDAFStd.java
--
diff --git 
a/ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDAFStd.java 
b/ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDAFStd.java
index 159a2fe..071884c 100644
--- a/ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDAFStd.java
+++ b/ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDAFStd.java
@@ -55,6 +55,8 @@ public class GenericUDAFStd extends GenericUDAFVariance {
 case FLOAT:
 case DOUBLE:
 case STRING:
+case VARCHAR:
+case CHAR:
 case TIMESTAMP:
 case DECIMAL:
   return new GenericUDAFStdEvaluator();

http://git-wip-us.apache.org/repos/asf/hive/blob/0140df74/ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDAFVariance.java
--
diff --git 
a/ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDAFVariance.java 
b/ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDAFVariance.java
index 3545390..2950605 100644
--- a/ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDAFVariance.java
+++ b/ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDAFVariance.java
@@ -72,6 +72,8 @@ public class GenericUDAFVariance extends 
AbstractGenericUDAFResolver {
 case FLOAT:
 case DOUBLE:
 case STRING:
+case VARCHAR:
+case CHAR:
 case TIMESTAMP:
 case DECIMAL:
   return new GenericUDAFVarianceEvaluator();



hive git commit: HIVE-11537 : Branch-1.0 build is broken (Pengcheng Xiong reviewed by Swarnim Kulkarni)

2015-08-12 Thread pxiong
Repository: hive
Updated Branches:
  refs/heads/branch-1.0 cafd55593 -> a4eb78c82


HIVE-11537 : Branch-1.0 build is broken (Pengcheng Xiong reviewed by Swarnim 
Kulkarni)


Project: http://git-wip-us.apache.org/repos/asf/hive/repo
Commit: http://git-wip-us.apache.org/repos/asf/hive/commit/a4eb78c8
Tree: http://git-wip-us.apache.org/repos/asf/hive/tree/a4eb78c8
Diff: http://git-wip-us.apache.org/repos/asf/hive/diff/a4eb78c8

Branch: refs/heads/branch-1.0
Commit: a4eb78c82e50458701f76cd6ffe6474d4ec6b8c1
Parents: cafd555
Author: Pengcheng Xiong 
Authored: Wed Aug 12 10:33:14 2015 -0700
Committer: Pengcheng Xiong 
Committed: Wed Aug 12 10:33:14 2015 -0700

--
 ql/src/java/org/apache/hadoop/hive/ql/optimizer/StatsOptimizer.java | 1 +
 1 file changed, 1 insertion(+)
--


http://git-wip-us.apache.org/repos/asf/hive/blob/a4eb78c8/ql/src/java/org/apache/hadoop/hive/ql/optimizer/StatsOptimizer.java
--
diff --git 
a/ql/src/java/org/apache/hadoop/hive/ql/optimizer/StatsOptimizer.java 
b/ql/src/java/org/apache/hadoop/hive/ql/optimizer/StatsOptimizer.java
index c312fc3..5e398ad 100644
--- a/ql/src/java/org/apache/hadoop/hive/ql/optimizer/StatsOptimizer.java
+++ b/ql/src/java/org/apache/hadoop/hive/ql/optimizer/StatsOptimizer.java
@@ -38,6 +38,7 @@ import org.apache.hadoop.hive.ql.exec.FetchTask;
 import org.apache.hadoop.hive.ql.exec.FileSinkOperator;
 import org.apache.hadoop.hive.ql.exec.FunctionRegistry;
 import org.apache.hadoop.hive.ql.exec.GroupByOperator;
+import org.apache.hadoop.hive.ql.exec.Operator;
 import org.apache.hadoop.hive.ql.exec.ReduceSinkOperator;
 import org.apache.hadoop.hive.ql.exec.SelectOperator;
 import org.apache.hadoop.hive.ql.exec.TableScanOperator;



hive git commit: HIVE-11442: Remove commons-configuration.jar from Hive distribution

2015-08-12 Thread daijy
Repository: hive
Updated Branches:
  refs/heads/master df138f2b1 -> c4ceefb4c


HIVE-11442: Remove commons-configuration.jar from Hive distribution


Project: http://git-wip-us.apache.org/repos/asf/hive/repo
Commit: http://git-wip-us.apache.org/repos/asf/hive/commit/c4ceefb4
Tree: http://git-wip-us.apache.org/repos/asf/hive/tree/c4ceefb4
Diff: http://git-wip-us.apache.org/repos/asf/hive/diff/c4ceefb4

Branch: refs/heads/master
Commit: c4ceefb4c7a5e17780e43acbeabdcca872bef3ae
Parents: df138f2
Author: Daniel Dai 
Authored: Wed Aug 12 10:12:02 2015 -0700
Committer: Daniel Dai 
Committed: Wed Aug 12 10:12:59 2015 -0700

--
 jdbc/pom.xml| 1 +
 packaging/src/main/assembly/bin.xml | 3 ++-
 2 files changed, 3 insertions(+), 1 deletion(-)
--


http://git-wip-us.apache.org/repos/asf/hive/blob/c4ceefb4/jdbc/pom.xml
--
diff --git a/jdbc/pom.xml b/jdbc/pom.xml
index 4fee22c..371d709 100644
--- a/jdbc/pom.xml
+++ b/jdbc/pom.xml
@@ -189,6 +189,7 @@
   
 
   org.apache.commons:commons-compress
+  
commons-configuration:commons-configuration
   org.apache.hadoop:*
   org.apache.hive:hive-ant
   org.apache.ant:*

http://git-wip-us.apache.org/repos/asf/hive/blob/c4ceefb4/packaging/src/main/assembly/bin.xml
--
diff --git a/packaging/src/main/assembly/bin.xml 
b/packaging/src/main/assembly/bin.xml
index a1c176f..63253c5 100644
--- a/packaging/src/main/assembly/bin.xml
+++ b/packaging/src/main/assembly/bin.xml
@@ -41,7 +41,8 @@
   
 org.apache.hadoop:*
 org.apache.hive.hcatalog:*
-   org.slf4j:*
+org.slf4j:*
+commons-configuration:commons-configuration
   
 
 



hive git commit: HIVE-11442: Remove commons-configuration.jar from Hive distribution

2015-08-12 Thread daijy
Repository: hive
Updated Branches:
  refs/heads/branch-1 a6d3070ec -> 425273eed


HIVE-11442: Remove commons-configuration.jar from Hive distribution


Project: http://git-wip-us.apache.org/repos/asf/hive/repo
Commit: http://git-wip-us.apache.org/repos/asf/hive/commit/425273ee
Tree: http://git-wip-us.apache.org/repos/asf/hive/tree/425273ee
Diff: http://git-wip-us.apache.org/repos/asf/hive/diff/425273ee

Branch: refs/heads/branch-1
Commit: 425273eed3213abbd08404d1aa743b38155e202e
Parents: a6d3070
Author: Daniel Dai 
Authored: Wed Aug 12 10:12:02 2015 -0700
Committer: Daniel Dai 
Committed: Wed Aug 12 10:12:02 2015 -0700

--
 jdbc/pom.xml| 1 +
 packaging/src/main/assembly/bin.xml | 3 ++-
 2 files changed, 3 insertions(+), 1 deletion(-)
--


http://git-wip-us.apache.org/repos/asf/hive/blob/425273ee/jdbc/pom.xml
--
diff --git a/jdbc/pom.xml b/jdbc/pom.xml
index 322b672..8cf5210 100644
--- a/jdbc/pom.xml
+++ b/jdbc/pom.xml
@@ -189,6 +189,7 @@
   
 
   org.apache.commons:commons-compress
+  
commons-configuration:commons-configuration
   org.apache.hadoop:*
   org.apache.hive:hive-ant
   org.apache.ant:*

http://git-wip-us.apache.org/repos/asf/hive/blob/425273ee/packaging/src/main/assembly/bin.xml
--
diff --git a/packaging/src/main/assembly/bin.xml 
b/packaging/src/main/assembly/bin.xml
index a1c176f..63253c5 100644
--- a/packaging/src/main/assembly/bin.xml
+++ b/packaging/src/main/assembly/bin.xml
@@ -41,7 +41,8 @@
   
 org.apache.hadoop:*
 org.apache.hive.hcatalog:*
-   org.slf4j:*
+org.slf4j:*
+commons-configuration:commons-configuration
   
 
 



hive git commit: HIVE-11348: Support START TRANSACTION/COMMIT/ROLLBACK commands: support SQL2011 reserved keywords (Pengcheng Xiong reviewed by Eugene Koifman)

2015-08-12 Thread pxiong
Repository: hive
Updated Branches:
  refs/heads/master 2ee30c485 -> df138f2b1


HIVE-11348: Support START TRANSACTION/COMMIT/ROLLBACK commands: support SQL2011 
reserved keywords (Pengcheng Xiong reviewed by Eugene Koifman)


Project: http://git-wip-us.apache.org/repos/asf/hive/repo
Commit: http://git-wip-us.apache.org/repos/asf/hive/commit/df138f2b
Tree: http://git-wip-us.apache.org/repos/asf/hive/tree/df138f2b
Diff: http://git-wip-us.apache.org/repos/asf/hive/diff/df138f2b

Branch: refs/heads/master
Commit: df138f2b133c62ac31021c179ce2d04cabcf210e
Parents: 2ee30c4
Author: Pengcheng Xiong 
Authored: Wed Aug 12 10:04:54 2015 -0700
Committer: Pengcheng Xiong 
Committed: Wed Aug 12 10:05:49 2015 -0700

--
 .../apache/hadoop/hive/ql/parse/IdentifiersParser.g | 16 ++--
 1 file changed, 10 insertions(+), 6 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/hive/blob/df138f2b/ql/src/java/org/apache/hadoop/hive/ql/parse/IdentifiersParser.g
--
diff --git a/ql/src/java/org/apache/hadoop/hive/ql/parse/IdentifiersParser.g 
b/ql/src/java/org/apache/hadoop/hive/ql/parse/IdentifiersParser.g
index 501287d..64af7d1 100644
--- a/ql/src/java/org/apache/hadoop/hive/ql/parse/IdentifiersParser.g
+++ b/ql/src/java/org/apache/hadoop/hive/ql/parse/IdentifiersParser.g
@@ -614,7 +614,13 @@ principalIdentifier
 | QuotedIdentifier
 ;
 
-//the new version of nonReserved + sql11ReservedKeywordsUsedAsIdentifier = old 
version of nonReserved 
+//The new version of nonReserved + sql11ReservedKeywordsUsedAsIdentifier = old 
version of nonReserved
+//Non reserved keywords are basically the keywords that can be used as 
identifiers.
+//All the KW_* are automatically not only keywords, but also reserved keywords.
+//That means, they can NOT be used as identifiers.
+//If you would like to use them as identifiers, put them in the nonReserved 
list below.
+//If you are not sure, please refer to the SQL2011 column in
+//http://www.postgresql.org/docs/9.5/static/sql-keywords-appendix.html
 nonReserved
 :
 KW_ADD | KW_ADMIN | KW_AFTER | KW_ANALYZE | KW_ARCHIVE | KW_ASC | 
KW_BEFORE | KW_BUCKET | KW_BUCKETS
@@ -636,11 +642,7 @@ nonReserved
 | KW_TINYINT | KW_TOUCH | KW_TRANSACTIONS | KW_UNARCHIVE | KW_UNDO | 
KW_UNIONTYPE | KW_UNLOCK | KW_UNSET
 | KW_UNSIGNED | KW_URI | KW_USE | KW_UTC | KW_UTCTIMESTAMP | KW_VALUE_TYPE 
| KW_VIEW | KW_WHILE | KW_YEAR
 | KW_WORK
-| KW_START
 | KW_TRANSACTION
-| KW_COMMIT
-| KW_ROLLBACK
-| KW_ONLY
 | KW_WRITE
 | KW_ISOLATION
 | KW_LEVEL
@@ -648,13 +650,15 @@ nonReserved
 | KW_AUTOCOMMIT
 ;
 
-//The following SQL2011 reserved keywords are used as cast function name only, 
it is a subset of the sql11ReservedKeywordsUsedAsIdentifier.
+//The following SQL2011 reserved keywords are used as cast function name only, 
but not as identifiers.
 sql11ReservedKeywordsUsedAsCastFunctionName
 :
 KW_BIGINT | KW_BINARY | KW_BOOLEAN | KW_CURRENT_DATE | 
KW_CURRENT_TIMESTAMP | KW_DATE | KW_DOUBLE | KW_FLOAT | KW_INT | KW_SMALLINT | 
KW_TIMESTAMP
 ;
 
 //The following SQL2011 reserved keywords are used as identifiers in many q 
tests, they may be added back due to backward compatibility.
+//We are planning to remove the following whole list after several releases.
+//Thus, please do not change the following list unless you know what to do.
 sql11ReservedKeywordsUsedAsIdentifier
 :
 KW_ALL | KW_ALTER | KW_ARRAY | KW_AS | KW_AUTHORIZATION | KW_BETWEEN | 
KW_BIGINT | KW_BINARY | KW_BOOLEAN