You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@hive.apache.org by da...@apache.org on 2015/12/18 21:06:33 UTC

[1/3] hive git commit: HIVE-12429: Switch default Hive authorization to SQLStandardAuth in 2.0

Repository: hive
Updated Branches:
  refs/heads/master 1199754cc -> 949640919


HIVE-12429: Switch default Hive authorization to SQLStandardAuth in 2.0


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

Branch: refs/heads/master
Commit: 95d22735d73381458354e0ca79a2cb607f8e2150
Parents: 7a1f14c
Author: Daniel Dai <da...@hortonworks.com>
Authored: Sat Dec 5 21:44:52 2015 -0800
Committer: Daniel Dai <da...@hortonworks.com>
Committed: Sat Dec 5 21:45:32 2015 -0800

----------------------------------------------------------------------
 .../org/apache/hadoop/hive/conf/HiveConf.java   |   2 +-
 .../cli/SemanticAnalysis/HCatAuthUtil.java      |   5 +-
 .../cli/SemanticAnalysis/TestHCatAuthUtil.java  |   4 +-
 .../SQLStdHiveAuthorizationValidator.java       |  11 --
 .../parse/authorization/TestPrivilegesV1.java   |  13 +-
 .../TestSQLStdHiveAccessControllerCLI.java      |  16 +-
 .../authorization_cli_auth_enable.q             |   7 -
 .../clientnegative/authorization_fail_1.q       |   1 +
 .../clientnegative/authorization_fail_2.q       |   1 +
 .../clientnegative/authorization_fail_3.q       |   1 +
 .../clientnegative/authorization_fail_4.q       |   1 +
 .../clientnegative/authorization_fail_5.q       |   3 +-
 .../clientnegative/authorization_fail_6.q       |   1 +
 .../clientnegative/authorization_fail_7.q       |   3 +-
 .../authorization_fail_create_db.q              |   1 +
 .../clientnegative/authorization_fail_drop_db.q |   1 +
 .../authorization_invalid_priv_v1.q             |   1 +
 .../queries/clientnegative/authorization_part.q |   3 +-
 .../authorization_public_create.q               |   1 +
 .../clientnegative/authorization_public_drop.q  |   1 +
 .../clientnegative/authorization_role_case.q    |   1 +
 .../clientnegative/authorize_grant_public.q     |   1 +
 .../clientnegative/authorize_revoke_public.q    |   1 +
 .../clientnegative/exim_22_export_authfail.q    |   1 +
 .../exim_23_import_exist_authfail.q             |   1 +
 .../exim_24_import_part_authfail.q              |   1 +
 .../exim_25_import_nonexist_authfail.q          |   1 +
 .../clientnegative/join_nonexistent_part.q      |   5 -
 .../clientnegative/load_exist_part_authfail.q   |   1 +
 .../clientnegative/load_nonpart_authfail.q      |   1 +
 .../queries/clientnegative/load_part_authfail.q |   1 +
 .../alter_rename_partition_authorization.q      |   1 +
 .../queries/clientpositive/authorization_1.q    |   4 +-
 .../queries/clientpositive/authorization_2.q    |   4 +-
 .../queries/clientpositive/authorization_3.q    |   2 +
 .../queries/clientpositive/authorization_4.q    |   4 +-
 .../queries/clientpositive/authorization_5.q    |   2 +
 .../queries/clientpositive/authorization_6.q    |   2 +
 .../queries/clientpositive/authorization_7.q    |   4 +-
 .../queries/clientpositive/authorization_8.q    |   1 +
 .../queries/clientpositive/authorization_9.q    |   1 +
 ...orization_default_create_table_owner_privs.q |   1 +
 .../clientpositive/authorization_explain.q      |   1 +
 .../authorization_show_role_principals_v1.q     |   1 +
 .../clientpositive/exim_21_export_authsuccess.q |   1 +
 .../exim_22_import_exist_authsuccess.q          |   1 +
 .../exim_23_import_part_authsuccess.q           |   1 +
 .../exim_24_import_nonexist_authsuccess.q       |   1 +
 ql/src/test/queries/clientpositive/index_auth.q |   2 +
 ql/src/test/queries/clientpositive/keyword_1.q  |   4 +-
 .../load_exist_part_authsuccess.q               |   1 +
 .../clientpositive/load_nonpart_authsuccess.q   |   1 +
 .../clientpositive/load_part_authsuccess.q      |   1 +
 ql/src/test/queries/clientpositive/show_roles.q |   2 +
 .../authorization_cli_auth_enable.q.out         |   1 -
 .../clientnegative/join_nonexistent_part.q.out  |   1 -
 .../clientpositive/authorization_9.q.out        | 180 +++++++++++++++++++
 .../authorization_explain.q.java1.7.out         |   3 -
 .../authorization_show_grant.q.out              |  60 +++++++
 59 files changed, 318 insertions(+), 62 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/hive/blob/95d22735/common/src/java/org/apache/hadoop/hive/conf/HiveConf.java
----------------------------------------------------------------------
diff --git a/common/src/java/org/apache/hadoop/hive/conf/HiveConf.java b/common/src/java/org/apache/hadoop/hive/conf/HiveConf.java
index d52f994..a563f2e 100644
--- a/common/src/java/org/apache/hadoop/hive/conf/HiveConf.java
+++ b/common/src/java/org/apache/hadoop/hive/conf/HiveConf.java
@@ -1641,7 +1641,7 @@ public class HiveConf extends Configuration {
     HIVE_AUTHORIZATION_ENABLED("hive.security.authorization.enabled", false,
         "enable or disable the Hive client authorization"),
     HIVE_AUTHORIZATION_MANAGER("hive.security.authorization.manager",
-        "org.apache.hadoop.hive.ql.security.authorization.DefaultHiveAuthorizationProvider",
+        "org.apache.hadoop.hive.ql.security.authorization.plugin.sqlstd.SQLStdHiveAuthorizerFactory",
         "The Hive client authorization manager class name. The user defined authorization class should implement \n" +
         "interface org.apache.hadoop.hive.ql.security.authorization.HiveAuthorizationProvider."),
     HIVE_AUTHENTICATOR_MANAGER("hive.security.authenticator.manager",

http://git-wip-us.apache.org/repos/asf/hive/blob/95d22735/hcatalog/core/src/main/java/org/apache/hive/hcatalog/cli/SemanticAnalysis/HCatAuthUtil.java
----------------------------------------------------------------------
diff --git a/hcatalog/core/src/main/java/org/apache/hive/hcatalog/cli/SemanticAnalysis/HCatAuthUtil.java b/hcatalog/core/src/main/java/org/apache/hive/hcatalog/cli/SemanticAnalysis/HCatAuthUtil.java
index 6dce9c4..c954245 100644
--- a/hcatalog/core/src/main/java/org/apache/hive/hcatalog/cli/SemanticAnalysis/HCatAuthUtil.java
+++ b/hcatalog/core/src/main/java/org/apache/hive/hcatalog/cli/SemanticAnalysis/HCatAuthUtil.java
@@ -20,7 +20,7 @@ package org.apache.hive.hcatalog.cli.SemanticAnalysis;
 
 import org.apache.hadoop.conf.Configuration;
 import org.apache.hadoop.hive.conf.HiveConf;
-import org.apache.hadoop.hive.ql.session.SessionState;
+import org.apache.hadoop.hive.ql.security.authorization.StorageBasedAuthorizationProvider;
 
 final class HCatAuthUtil {
   public static boolean isAuthorizationEnabled(Configuration conf) {
@@ -31,6 +31,7 @@ final class HCatAuthUtil {
     // additional checks if a V2 authorizer is in use. The reccomended configuration is to
     // use storage based authorization in metastore server
     return HiveConf.getBoolVar(conf, HiveConf.ConfVars.HIVE_AUTHORIZATION_ENABLED)
-        && SessionState.get().getAuthorizer() != null;
+        && HiveConf.getVar(conf, HiveConf.ConfVars.HIVE_AUTHORIZATION_MANAGER)
+        == StorageBasedAuthorizationProvider.class.getName();
   }
 }

http://git-wip-us.apache.org/repos/asf/hive/blob/95d22735/hcatalog/core/src/test/java/org/apache/hive/hcatalog/cli/SemanticAnalysis/TestHCatAuthUtil.java
----------------------------------------------------------------------
diff --git a/hcatalog/core/src/test/java/org/apache/hive/hcatalog/cli/SemanticAnalysis/TestHCatAuthUtil.java b/hcatalog/core/src/test/java/org/apache/hive/hcatalog/cli/SemanticAnalysis/TestHCatAuthUtil.java
index 830dcb8..a190002 100644
--- a/hcatalog/core/src/test/java/org/apache/hive/hcatalog/cli/SemanticAnalysis/TestHCatAuthUtil.java
+++ b/hcatalog/core/src/test/java/org/apache/hive/hcatalog/cli/SemanticAnalysis/TestHCatAuthUtil.java
@@ -24,6 +24,7 @@ import static org.junit.Assert.assertTrue;
 import org.apache.hadoop.hive.conf.HiveConf;
 import org.apache.hadoop.hive.conf.HiveConf.ConfVars;
 import org.apache.hadoop.hive.ql.security.HiveAuthenticationProvider;
+import org.apache.hadoop.hive.ql.security.authorization.StorageBasedAuthorizationProvider;
 import org.apache.hadoop.hive.ql.security.authorization.plugin.HiveAuthorizer;
 import org.apache.hadoop.hive.ql.security.authorization.plugin.HiveAuthorizerFactory;
 import org.apache.hadoop.hive.ql.security.authorization.plugin.HiveAuthzPluginException;
@@ -49,12 +50,13 @@ public class TestHCatAuthUtil {
   }
 
   /**
-   * Test with auth enabled and v1 auth
+   * Test with auth enabled and StorageBasedAuthorizationProvider
    */
   @Test
   public void authEnabledV1Auth() throws Exception {
     HiveConf hcatConf = new HiveConf(this.getClass());
     hcatConf.setBoolVar(ConfVars.HIVE_AUTHORIZATION_ENABLED, true);
+    hcatConf.setVar(ConfVars.HIVE_AUTHORIZATION_MANAGER, StorageBasedAuthorizationProvider.class.getName());
     SessionState.start(hcatConf);
     assertTrue("hcat auth should be enabled", HCatAuthUtil.isAuthorizationEnabled(hcatConf));
   }

http://git-wip-us.apache.org/repos/asf/hive/blob/95d22735/ql/src/java/org/apache/hadoop/hive/ql/security/authorization/plugin/sqlstd/SQLStdHiveAuthorizationValidator.java
----------------------------------------------------------------------
diff --git a/ql/src/java/org/apache/hadoop/hive/ql/security/authorization/plugin/sqlstd/SQLStdHiveAuthorizationValidator.java b/ql/src/java/org/apache/hadoop/hive/ql/security/authorization/plugin/sqlstd/SQLStdHiveAuthorizationValidator.java
index ee57f69..9f586be 100644
--- a/ql/src/java/org/apache/hadoop/hive/ql/security/authorization/plugin/sqlstd/SQLStdHiveAuthorizationValidator.java
+++ b/ql/src/java/org/apache/hadoop/hive/ql/security/authorization/plugin/sqlstd/SQLStdHiveAuthorizationValidator.java
@@ -60,17 +60,6 @@ public class SQLStdHiveAuthorizationValidator implements HiveAuthorizationValida
     this.authenticator = authenticator;
     this.privController = privilegeManager;
     this.ctx = SQLAuthorizationUtils.applyTestSettings(ctx, conf);
-    assertHiveCliAuthDisabled(conf);
-  }
-
-  private void assertHiveCliAuthDisabled(HiveConf conf) throws HiveAuthzPluginException {
-    if (ctx.getClientType() == CLIENT_TYPE.HIVECLI
-        && conf.getBoolVar(ConfVars.HIVE_AUTHORIZATION_ENABLED)) {
-      throw new HiveAuthzPluginException(
-          "SQL standards based authorization should not be enabled from hive cli"
-              + "Instead the use of storage based authorization in hive metastore is reccomended. Set "
-              + ConfVars.HIVE_AUTHORIZATION_ENABLED.varname + "=false to disable authz within cli");
-    }
   }
 
   @Override

http://git-wip-us.apache.org/repos/asf/hive/blob/95d22735/ql/src/test/org/apache/hadoop/hive/ql/parse/authorization/TestPrivilegesV1.java
----------------------------------------------------------------------
diff --git a/ql/src/test/org/apache/hadoop/hive/ql/parse/authorization/TestPrivilegesV1.java b/ql/src/test/org/apache/hadoop/hive/ql/parse/authorization/TestPrivilegesV1.java
index c97bbb8..c614630 100644
--- a/ql/src/test/org/apache/hadoop/hive/ql/parse/authorization/TestPrivilegesV1.java
+++ b/ql/src/test/org/apache/hadoop/hive/ql/parse/authorization/TestPrivilegesV1.java
@@ -76,17 +76,8 @@ public class TestPrivilegesV1 extends PrivilegesTestBase{
    */
   @Test
   public void testPrivInGrantNotAccepted() throws Exception{
-    grantUserTableFail("insert");
-    grantUserTableFail("delete");
-  }
-
-  private void grantUserTableFail(String privName) {
-    try{
-      grantUserTable(privName, PrivilegeType.UNKNOWN);
-      Assert.fail("Exception expected");
-    }catch(Exception e){
-
-    }
+    grantUserTable("insert", PrivilegeType.INSERT);
+    grantUserTable("delete", PrivilegeType.DELETE);
   }
 
   private void grantUserTable(String privName, PrivilegeType privType) throws Exception {

http://git-wip-us.apache.org/repos/asf/hive/blob/95d22735/ql/src/test/org/apache/hadoop/hive/ql/security/authorization/plugin/sqlstd/TestSQLStdHiveAccessControllerCLI.java
----------------------------------------------------------------------
diff --git a/ql/src/test/org/apache/hadoop/hive/ql/security/authorization/plugin/sqlstd/TestSQLStdHiveAccessControllerCLI.java b/ql/src/test/org/apache/hadoop/hive/ql/security/authorization/plugin/sqlstd/TestSQLStdHiveAccessControllerCLI.java
index ac862c5..7d243f0 100644
--- a/ql/src/test/org/apache/hadoop/hive/ql/security/authorization/plugin/sqlstd/TestSQLStdHiveAccessControllerCLI.java
+++ b/ql/src/test/org/apache/hadoop/hive/ql/security/authorization/plugin/sqlstd/TestSQLStdHiveAccessControllerCLI.java
@@ -68,22 +68,16 @@ public class TestSQLStdHiveAccessControllerCLI {
   }
 
   /**
-   * Verify that exceptiion is thrown if authorization is enabled from hive cli,
+   * Verify that no exception is thrown if authorization is enabled from hive cli,
    * when sql std auth is used
    */
   @Test
-  public void testAuthEnableError() {
+  public void testAuthEnable() throws Exception {
     HiveConf processedConf = new HiveConf();
     processedConf.setBoolVar(ConfVars.HIVE_AUTHORIZATION_ENABLED, true);
-    try {
-      HiveAuthorizerFactory authorizerFactory = new SQLStdHiveAuthorizerFactory();
-      HiveAuthorizer authorizer = authorizerFactory.createHiveAuthorizer(null, processedConf,
-          new HadoopDefaultAuthenticator(), getCLISessionCtx());
-      fail("Exception expected");
-    } catch (HiveAuthzPluginException e) {
-      assertTrue(e.getMessage().contains(
-          "SQL standards based authorization should not be enabled from hive cli"));
-    }
+    HiveAuthorizerFactory authorizerFactory = new SQLStdHiveAuthorizerFactory();
+    HiveAuthorizer authorizer = authorizerFactory.createHiveAuthorizer(null, processedConf,
+        new HadoopDefaultAuthenticator(), getCLISessionCtx());
   }
 
 }

http://git-wip-us.apache.org/repos/asf/hive/blob/95d22735/ql/src/test/queries/clientnegative/authorization_cli_auth_enable.q
----------------------------------------------------------------------
diff --git a/ql/src/test/queries/clientnegative/authorization_cli_auth_enable.q b/ql/src/test/queries/clientnegative/authorization_cli_auth_enable.q
deleted file mode 100644
index 4761051..0000000
--- a/ql/src/test/queries/clientnegative/authorization_cli_auth_enable.q
+++ /dev/null
@@ -1,7 +0,0 @@
-set hive.security.authorization.manager=org.apache.hadoop.hive.ql.security.authorization.plugin.sqlstd.SQLStdHiveAuthorizerFactoryForTest;
-set hive.security.authenticator.manager=org.apache.hadoop.hive.ql.security.SessionStateConfigUserAuthenticator;
-set user.name=hive_test_user;
-set hive.security.authorization.enabled=true;
-
--- verify that sql std auth throws an error with hive cli, if auth is enabled
-show tables 'src';

http://git-wip-us.apache.org/repos/asf/hive/blob/95d22735/ql/src/test/queries/clientnegative/authorization_fail_1.q
----------------------------------------------------------------------
diff --git a/ql/src/test/queries/clientnegative/authorization_fail_1.q b/ql/src/test/queries/clientnegative/authorization_fail_1.q
index c38dab5..49aa09e 100644
--- a/ql/src/test/queries/clientnegative/authorization_fail_1.q
+++ b/ql/src/test/queries/clientnegative/authorization_fail_1.q
@@ -1,3 +1,4 @@
+set hive.security.authorization.manager=org.apache.hadoop.hive.ql.security.authorization.DefaultHiveAuthorizationProvider;
 create table authorization_fail_1 (key int, value string);
 set hive.security.authorization.enabled=true;
 

http://git-wip-us.apache.org/repos/asf/hive/blob/95d22735/ql/src/test/queries/clientnegative/authorization_fail_2.q
----------------------------------------------------------------------
diff --git a/ql/src/test/queries/clientnegative/authorization_fail_2.q b/ql/src/test/queries/clientnegative/authorization_fail_2.q
index 341e447..1a703d5 100644
--- a/ql/src/test/queries/clientnegative/authorization_fail_2.q
+++ b/ql/src/test/queries/clientnegative/authorization_fail_2.q
@@ -1,3 +1,4 @@
+set hive.security.authorization.manager=org.apache.hadoop.hive.ql.security.authorization.DefaultHiveAuthorizationProvider;
 create table authorization_fail_2 (key int, value string) partitioned by (ds string);
 
 set hive.security.authorization.enabled=true;

http://git-wip-us.apache.org/repos/asf/hive/blob/95d22735/ql/src/test/queries/clientnegative/authorization_fail_3.q
----------------------------------------------------------------------
diff --git a/ql/src/test/queries/clientnegative/authorization_fail_3.q b/ql/src/test/queries/clientnegative/authorization_fail_3.q
index 6a56daa..03c516d 100644
--- a/ql/src/test/queries/clientnegative/authorization_fail_3.q
+++ b/ql/src/test/queries/clientnegative/authorization_fail_3.q
@@ -1,3 +1,4 @@
+set hive.security.authorization.manager=org.apache.hadoop.hive.ql.security.authorization.DefaultHiveAuthorizationProvider;
 -- SORT_BEFORE_DIFF
 
 create table authorization_fail_3 (key int, value string) partitioned by (ds string);

http://git-wip-us.apache.org/repos/asf/hive/blob/95d22735/ql/src/test/queries/clientnegative/authorization_fail_4.q
----------------------------------------------------------------------
diff --git a/ql/src/test/queries/clientnegative/authorization_fail_4.q b/ql/src/test/queries/clientnegative/authorization_fail_4.q
index f0cb645..b3e687e 100644
--- a/ql/src/test/queries/clientnegative/authorization_fail_4.q
+++ b/ql/src/test/queries/clientnegative/authorization_fail_4.q
@@ -1,3 +1,4 @@
+set hive.security.authorization.manager=org.apache.hadoop.hive.ql.security.authorization.DefaultHiveAuthorizationProvider;
 -- SORT_BEFORE_DIFF
 
 create table authorization_fail_4 (key int, value string) partitioned by (ds string);

http://git-wip-us.apache.org/repos/asf/hive/blob/95d22735/ql/src/test/queries/clientnegative/authorization_fail_5.q
----------------------------------------------------------------------
diff --git a/ql/src/test/queries/clientnegative/authorization_fail_5.q b/ql/src/test/queries/clientnegative/authorization_fail_5.q
index b4efab5..abf2e81 100644
--- a/ql/src/test/queries/clientnegative/authorization_fail_5.q
+++ b/ql/src/test/queries/clientnegative/authorization_fail_5.q
@@ -1,3 +1,4 @@
+set hive.security.authorization.manager=org.apache.hadoop.hive.ql.security.authorization.DefaultHiveAuthorizationProvider;
 -- SORT_BEFORE_DIFF
 
 create table authorization_fail (key int, value string) partitioned by (ds string);
@@ -17,4 +18,4 @@ revoke Select on table authorization_fail partition (ds='2010') from user hive_t
 
 show grant user hive_test_user on table authorization_fail partition (ds='2010');
 
-select key from authorization_fail where ds='2010';
\ No newline at end of file
+select key from authorization_fail where ds='2010';

http://git-wip-us.apache.org/repos/asf/hive/blob/95d22735/ql/src/test/queries/clientnegative/authorization_fail_6.q
----------------------------------------------------------------------
diff --git a/ql/src/test/queries/clientnegative/authorization_fail_6.q b/ql/src/test/queries/clientnegative/authorization_fail_6.q
index 9772469..d3322f4 100644
--- a/ql/src/test/queries/clientnegative/authorization_fail_6.q
+++ b/ql/src/test/queries/clientnegative/authorization_fail_6.q
@@ -1,3 +1,4 @@
+set hive.security.authorization.manager=org.apache.hadoop.hive.ql.security.authorization.DefaultHiveAuthorizationProvider;
 -- SORT_BEFORE_DIFF
 
 create table authorization_part_fail (key int, value string) partitioned by (ds string);

http://git-wip-us.apache.org/repos/asf/hive/blob/95d22735/ql/src/test/queries/clientnegative/authorization_fail_7.q
----------------------------------------------------------------------
diff --git a/ql/src/test/queries/clientnegative/authorization_fail_7.q b/ql/src/test/queries/clientnegative/authorization_fail_7.q
index 492deed..9eeecc1 100644
--- a/ql/src/test/queries/clientnegative/authorization_fail_7.q
+++ b/ql/src/test/queries/clientnegative/authorization_fail_7.q
@@ -1,3 +1,4 @@
+set hive.security.authorization.manager=org.apache.hadoop.hive.ql.security.authorization.DefaultHiveAuthorizationProvider;
 -- SORT_BEFORE_DIFF
 
 create table authorization_fail (key int, value string);
@@ -14,4 +15,4 @@ show grant role hive_test_role_fail on table authorization_fail;
 
 drop role hive_test_role_fail;
 
-select key from authorization_fail;
\ No newline at end of file
+select key from authorization_fail;

http://git-wip-us.apache.org/repos/asf/hive/blob/95d22735/ql/src/test/queries/clientnegative/authorization_fail_create_db.q
----------------------------------------------------------------------
diff --git a/ql/src/test/queries/clientnegative/authorization_fail_create_db.q b/ql/src/test/queries/clientnegative/authorization_fail_create_db.q
index d969e39..147c772 100644
--- a/ql/src/test/queries/clientnegative/authorization_fail_create_db.q
+++ b/ql/src/test/queries/clientnegative/authorization_fail_create_db.q
@@ -1,3 +1,4 @@
+set hive.security.authorization.manager=org.apache.hadoop.hive.ql.security.authorization.DefaultHiveAuthorizationProvider;
 set hive.security.authorization.enabled=true;
 
 create database db_to_fail;

http://git-wip-us.apache.org/repos/asf/hive/blob/95d22735/ql/src/test/queries/clientnegative/authorization_fail_drop_db.q
----------------------------------------------------------------------
diff --git a/ql/src/test/queries/clientnegative/authorization_fail_drop_db.q b/ql/src/test/queries/clientnegative/authorization_fail_drop_db.q
index 87719b0..5a98620 100644
--- a/ql/src/test/queries/clientnegative/authorization_fail_drop_db.q
+++ b/ql/src/test/queries/clientnegative/authorization_fail_drop_db.q
@@ -1,3 +1,4 @@
+set hive.security.authorization.manager=org.apache.hadoop.hive.ql.security.authorization.DefaultHiveAuthorizationProvider;
 set hive.security.authorization.enabled=false;
 create database db_fail_to_drop;
 set hive.security.authorization.enabled=true;

http://git-wip-us.apache.org/repos/asf/hive/blob/95d22735/ql/src/test/queries/clientnegative/authorization_invalid_priv_v1.q
----------------------------------------------------------------------
diff --git a/ql/src/test/queries/clientnegative/authorization_invalid_priv_v1.q b/ql/src/test/queries/clientnegative/authorization_invalid_priv_v1.q
index 2a1da23..2742f0d 100644
--- a/ql/src/test/queries/clientnegative/authorization_invalid_priv_v1.q
+++ b/ql/src/test/queries/clientnegative/authorization_invalid_priv_v1.q
@@ -1,3 +1,4 @@
+set hive.security.authorization.manager=org.apache.hadoop.hive.ql.security.authorization.DefaultHiveAuthorizationProvider;
 create table if not exists authorization_invalid_v1 (key int, value string);
 grant delete on table authorization_invalid_v1 to user hive_test_user;
 drop table authorization_invalid_v1;

http://git-wip-us.apache.org/repos/asf/hive/blob/95d22735/ql/src/test/queries/clientnegative/authorization_part.q
----------------------------------------------------------------------
diff --git a/ql/src/test/queries/clientnegative/authorization_part.q b/ql/src/test/queries/clientnegative/authorization_part.q
index a654a23..517f513 100644
--- a/ql/src/test/queries/clientnegative/authorization_part.q
+++ b/ql/src/test/queries/clientnegative/authorization_part.q
@@ -1,3 +1,4 @@
+set hive.security.authorization.manager=org.apache.hadoop.hive.ql.security.authorization.DefaultHiveAuthorizationProvider;
 -- SORT_BEFORE_DIFF
 
 create table authorization_part_fail (key int, value string) partitioned by (ds string);
@@ -34,4 +35,4 @@ revoke select on table authorization_part_fail partition (ds='2010') from group
 select key,value, ds from authorization_part_fail where ds>='2010' order by key, ds limit 20;
 
 drop table authorization_part_fail;
-drop table src_auth;
\ No newline at end of file
+drop table src_auth;

http://git-wip-us.apache.org/repos/asf/hive/blob/95d22735/ql/src/test/queries/clientnegative/authorization_public_create.q
----------------------------------------------------------------------
diff --git a/ql/src/test/queries/clientnegative/authorization_public_create.q b/ql/src/test/queries/clientnegative/authorization_public_create.q
index 8298ce9..00e542a 100644
--- a/ql/src/test/queries/clientnegative/authorization_public_create.q
+++ b/ql/src/test/queries/clientnegative/authorization_public_create.q
@@ -1 +1,2 @@
+set hive.security.authorization.manager=org.apache.hadoop.hive.ql.security.authorization.DefaultHiveAuthorizationProvider;
 create role public;

http://git-wip-us.apache.org/repos/asf/hive/blob/95d22735/ql/src/test/queries/clientnegative/authorization_public_drop.q
----------------------------------------------------------------------
diff --git a/ql/src/test/queries/clientnegative/authorization_public_drop.q b/ql/src/test/queries/clientnegative/authorization_public_drop.q
index 7e89f6e..1f5025f 100644
--- a/ql/src/test/queries/clientnegative/authorization_public_drop.q
+++ b/ql/src/test/queries/clientnegative/authorization_public_drop.q
@@ -1 +1,2 @@
+set hive.security.authorization.manager=org.apache.hadoop.hive.ql.security.authorization.DefaultHiveAuthorizationProvider;
 drop role public;

http://git-wip-us.apache.org/repos/asf/hive/blob/95d22735/ql/src/test/queries/clientnegative/authorization_role_case.q
----------------------------------------------------------------------
diff --git a/ql/src/test/queries/clientnegative/authorization_role_case.q b/ql/src/test/queries/clientnegative/authorization_role_case.q
index 339239a..bcc075d 100644
--- a/ql/src/test/queries/clientnegative/authorization_role_case.q
+++ b/ql/src/test/queries/clientnegative/authorization_role_case.q
@@ -1,3 +1,4 @@
+set hive.security.authorization.manager=org.apache.hadoop.hive.ql.security.authorization.DefaultHiveAuthorizationProvider;
 create role mixCaseRole1;
 create role mixCaseRole2;
 

http://git-wip-us.apache.org/repos/asf/hive/blob/95d22735/ql/src/test/queries/clientnegative/authorize_grant_public.q
----------------------------------------------------------------------
diff --git a/ql/src/test/queries/clientnegative/authorize_grant_public.q b/ql/src/test/queries/clientnegative/authorize_grant_public.q
index e024b50..31d7462 100644
--- a/ql/src/test/queries/clientnegative/authorize_grant_public.q
+++ b/ql/src/test/queries/clientnegative/authorize_grant_public.q
@@ -1 +1,2 @@
+set hive.security.authorization.manager=org.apache.hadoop.hive.ql.security.authorization.DefaultHiveAuthorizationProvider;
 grant role public to user hive_test_user;

http://git-wip-us.apache.org/repos/asf/hive/blob/95d22735/ql/src/test/queries/clientnegative/authorize_revoke_public.q
----------------------------------------------------------------------
diff --git a/ql/src/test/queries/clientnegative/authorize_revoke_public.q b/ql/src/test/queries/clientnegative/authorize_revoke_public.q
index dadd424..4d949ac 100644
--- a/ql/src/test/queries/clientnegative/authorize_revoke_public.q
+++ b/ql/src/test/queries/clientnegative/authorize_revoke_public.q
@@ -1 +1,2 @@
+set hive.security.authorization.manager=org.apache.hadoop.hive.ql.security.authorization.DefaultHiveAuthorizationProvider;
 revoke role public from user hive_test_user;

http://git-wip-us.apache.org/repos/asf/hive/blob/95d22735/ql/src/test/queries/clientnegative/exim_22_export_authfail.q
----------------------------------------------------------------------
diff --git a/ql/src/test/queries/clientnegative/exim_22_export_authfail.q b/ql/src/test/queries/clientnegative/exim_22_export_authfail.q
index b818686..5810be5 100644
--- a/ql/src/test/queries/clientnegative/exim_22_export_authfail.q
+++ b/ql/src/test/queries/clientnegative/exim_22_export_authfail.q
@@ -1,3 +1,4 @@
+set hive.security.authorization.manager=org.apache.hadoop.hive.ql.security.authorization.DefaultHiveAuthorizationProvider;
 set hive.test.mode=true;
 set hive.test.mode.prefix=;
 

http://git-wip-us.apache.org/repos/asf/hive/blob/95d22735/ql/src/test/queries/clientnegative/exim_23_import_exist_authfail.q
----------------------------------------------------------------------
diff --git a/ql/src/test/queries/clientnegative/exim_23_import_exist_authfail.q b/ql/src/test/queries/clientnegative/exim_23_import_exist_authfail.q
index 4acefb9..4e302c0 100644
--- a/ql/src/test/queries/clientnegative/exim_23_import_exist_authfail.q
+++ b/ql/src/test/queries/clientnegative/exim_23_import_exist_authfail.q
@@ -1,3 +1,4 @@
+set hive.security.authorization.manager=org.apache.hadoop.hive.ql.security.authorization.DefaultHiveAuthorizationProvider;
 set hive.test.mode=true;
 set hive.test.mode.prefix=;
 

http://git-wip-us.apache.org/repos/asf/hive/blob/95d22735/ql/src/test/queries/clientnegative/exim_24_import_part_authfail.q
----------------------------------------------------------------------
diff --git a/ql/src/test/queries/clientnegative/exim_24_import_part_authfail.q b/ql/src/test/queries/clientnegative/exim_24_import_part_authfail.q
index 467014e..0bc070c 100644
--- a/ql/src/test/queries/clientnegative/exim_24_import_part_authfail.q
+++ b/ql/src/test/queries/clientnegative/exim_24_import_part_authfail.q
@@ -1,3 +1,4 @@
+set hive.security.authorization.manager=org.apache.hadoop.hive.ql.security.authorization.DefaultHiveAuthorizationProvider;
 set hive.test.mode=true;
 set hive.test.mode.prefix=;
 set hive.test.mode.nosamplelist=exim_department,exim_employee;

http://git-wip-us.apache.org/repos/asf/hive/blob/95d22735/ql/src/test/queries/clientnegative/exim_25_import_nonexist_authfail.q
----------------------------------------------------------------------
diff --git a/ql/src/test/queries/clientnegative/exim_25_import_nonexist_authfail.q b/ql/src/test/queries/clientnegative/exim_25_import_nonexist_authfail.q
index 595fa7e..3ed7a5f 100644
--- a/ql/src/test/queries/clientnegative/exim_25_import_nonexist_authfail.q
+++ b/ql/src/test/queries/clientnegative/exim_25_import_nonexist_authfail.q
@@ -1,3 +1,4 @@
+set hive.security.authorization.manager=org.apache.hadoop.hive.ql.security.authorization.DefaultHiveAuthorizationProvider;
 set hive.test.mode=true;
 set hive.test.mode.prefix=;
 set hive.test.mode.nosamplelist=exim_department,exim_employee;

http://git-wip-us.apache.org/repos/asf/hive/blob/95d22735/ql/src/test/queries/clientnegative/join_nonexistent_part.q
----------------------------------------------------------------------
diff --git a/ql/src/test/queries/clientnegative/join_nonexistent_part.q b/ql/src/test/queries/clientnegative/join_nonexistent_part.q
deleted file mode 100644
index bf60d2e..0000000
--- a/ql/src/test/queries/clientnegative/join_nonexistent_part.q
+++ /dev/null
@@ -1,5 +0,0 @@
-set hive.mapred.mode=nonstrict;
-SET hive.security.authorization.enabled = true;
-SELECT *
-FROM srcpart s1 join src s2 on s1.key == s2.key
-WHERE s1.ds='non-existent';

http://git-wip-us.apache.org/repos/asf/hive/blob/95d22735/ql/src/test/queries/clientnegative/load_exist_part_authfail.q
----------------------------------------------------------------------
diff --git a/ql/src/test/queries/clientnegative/load_exist_part_authfail.q b/ql/src/test/queries/clientnegative/load_exist_part_authfail.q
index eb72d94..f9ecc6f 100644
--- a/ql/src/test/queries/clientnegative/load_exist_part_authfail.q
+++ b/ql/src/test/queries/clientnegative/load_exist_part_authfail.q
@@ -1,3 +1,4 @@
+set hive.security.authorization.manager=org.apache.hadoop.hive.ql.security.authorization.DefaultHiveAuthorizationProvider;
 create table hive_test_src ( col1 string ) partitioned by (pcol1 string) stored as textfile;
 alter table hive_test_src add partition (pcol1 = 'test_part');
 set hive.security.authorization.enabled=true;

http://git-wip-us.apache.org/repos/asf/hive/blob/95d22735/ql/src/test/queries/clientnegative/load_nonpart_authfail.q
----------------------------------------------------------------------
diff --git a/ql/src/test/queries/clientnegative/load_nonpart_authfail.q b/ql/src/test/queries/clientnegative/load_nonpart_authfail.q
index 3265363..1f40978 100644
--- a/ql/src/test/queries/clientnegative/load_nonpart_authfail.q
+++ b/ql/src/test/queries/clientnegative/load_nonpart_authfail.q
@@ -1,3 +1,4 @@
+set hive.security.authorization.manager=org.apache.hadoop.hive.ql.security.authorization.DefaultHiveAuthorizationProvider;
 create table hive_test_src ( col1 string ) stored as textfile;
 set hive.security.authorization.enabled=true;
 load data local inpath '../../data/files/test.dat' overwrite into table hive_test_src ;

http://git-wip-us.apache.org/repos/asf/hive/blob/95d22735/ql/src/test/queries/clientnegative/load_part_authfail.q
----------------------------------------------------------------------
diff --git a/ql/src/test/queries/clientnegative/load_part_authfail.q b/ql/src/test/queries/clientnegative/load_part_authfail.q
index 315988d..5735cd2 100644
--- a/ql/src/test/queries/clientnegative/load_part_authfail.q
+++ b/ql/src/test/queries/clientnegative/load_part_authfail.q
@@ -1,3 +1,4 @@
+set hive.security.authorization.manager=org.apache.hadoop.hive.ql.security.authorization.DefaultHiveAuthorizationProvider;
 create table hive_test_src ( col1 string ) partitioned by (pcol1 string) stored as textfile;
 set hive.security.authorization.enabled=true;
 load data local inpath '../../data/files/test.dat' overwrite into table hive_test_src partition (pcol1 = 'test_part');

http://git-wip-us.apache.org/repos/asf/hive/blob/95d22735/ql/src/test/queries/clientpositive/alter_rename_partition_authorization.q
----------------------------------------------------------------------
diff --git a/ql/src/test/queries/clientpositive/alter_rename_partition_authorization.q b/ql/src/test/queries/clientpositive/alter_rename_partition_authorization.q
index cdefc2d..70f2bb4 100644
--- a/ql/src/test/queries/clientpositive/alter_rename_partition_authorization.q
+++ b/ql/src/test/queries/clientpositive/alter_rename_partition_authorization.q
@@ -1,3 +1,4 @@
+set hive.security.authorization.manager=org.apache.hadoop.hive.ql.security.authorization.DefaultHiveAuthorizationProvider;
 -- SORT_BEFORE_DIFF
 
 create table src_auth_tmp as select * from src;

http://git-wip-us.apache.org/repos/asf/hive/blob/95d22735/ql/src/test/queries/clientpositive/authorization_1.q
----------------------------------------------------------------------
diff --git a/ql/src/test/queries/clientpositive/authorization_1.q b/ql/src/test/queries/clientpositive/authorization_1.q
index d5fd2ec..184acc7 100644
--- a/ql/src/test/queries/clientpositive/authorization_1.q
+++ b/ql/src/test/queries/clientpositive/authorization_1.q
@@ -1,3 +1,5 @@
+set hive.security.authorization.manager=org.apache.hadoop.hive.ql.security.authorization.DefaultHiveAuthorizationProvider;
+
 -- SORT_BEFORE_DIFF
 
 create table src_autho_test as select * from src;
@@ -86,4 +88,4 @@ revoke select on table src_autho_test from role sRc_roLE;
 drop role sRc_roLE;
 
 set hive.security.authorization.enabled=false;
-drop table src_autho_test;
\ No newline at end of file
+drop table src_autho_test;

http://git-wip-us.apache.org/repos/asf/hive/blob/95d22735/ql/src/test/queries/clientpositive/authorization_2.q
----------------------------------------------------------------------
diff --git a/ql/src/test/queries/clientpositive/authorization_2.q b/ql/src/test/queries/clientpositive/authorization_2.q
index 3353c53..efb42f7 100644
--- a/ql/src/test/queries/clientpositive/authorization_2.q
+++ b/ql/src/test/queries/clientpositive/authorization_2.q
@@ -1,3 +1,5 @@
+set hive.security.authorization.manager=org.apache.hadoop.hive.ql.security.authorization.DefaultHiveAuthorizationProvider;
+
 -- SORT_BEFORE_DIFF
 
 create table authorization_part (key int, value string) partitioned by (ds string);
@@ -108,4 +110,4 @@ show grant group hive_test_group1 on table authorization_part partition (ds='201
 
 revoke select on table src_auth_tmp from user hive_test_user;
 set hive.security.authorization.enabled=false;
-drop table authorization_part;
\ No newline at end of file
+drop table authorization_part;

http://git-wip-us.apache.org/repos/asf/hive/blob/95d22735/ql/src/test/queries/clientpositive/authorization_3.q
----------------------------------------------------------------------
diff --git a/ql/src/test/queries/clientpositive/authorization_3.q b/ql/src/test/queries/clientpositive/authorization_3.q
index ba76b00..09c6494 100644
--- a/ql/src/test/queries/clientpositive/authorization_3.q
+++ b/ql/src/test/queries/clientpositive/authorization_3.q
@@ -1,3 +1,5 @@
+set hive.security.authorization.manager=org.apache.hadoop.hive.ql.security.authorization.DefaultHiveAuthorizationProvider;
+
 -- SORT_BEFORE_DIFF
 
 create table src_autho_test as select * from src;

http://git-wip-us.apache.org/repos/asf/hive/blob/95d22735/ql/src/test/queries/clientpositive/authorization_4.q
----------------------------------------------------------------------
diff --git a/ql/src/test/queries/clientpositive/authorization_4.q b/ql/src/test/queries/clientpositive/authorization_4.q
index 152c8e5..c1848a7 100644
--- a/ql/src/test/queries/clientpositive/authorization_4.q
+++ b/ql/src/test/queries/clientpositive/authorization_4.q
@@ -1,3 +1,5 @@
+set hive.security.authorization.manager=org.apache.hadoop.hive.ql.security.authorization.DefaultHiveAuthorizationProvider;
+
 -- SORT_BEFORE_DIFF
 
 create table src_autho_test as select * from src;
@@ -10,4 +12,4 @@ show grant user hive_test_user on table src_autho_test;
 
 select key from src_autho_test order by key limit 20;
 
-drop table src_autho_test;
\ No newline at end of file
+drop table src_autho_test;

http://git-wip-us.apache.org/repos/asf/hive/blob/95d22735/ql/src/test/queries/clientpositive/authorization_5.q
----------------------------------------------------------------------
diff --git a/ql/src/test/queries/clientpositive/authorization_5.q b/ql/src/test/queries/clientpositive/authorization_5.q
index fec27b4..fb9b262 100644
--- a/ql/src/test/queries/clientpositive/authorization_5.q
+++ b/ql/src/test/queries/clientpositive/authorization_5.q
@@ -1,3 +1,5 @@
+set hive.security.authorization.manager=org.apache.hadoop.hive.ql.security.authorization.DefaultHiveAuthorizationProvider;
+
 -- SORT_BEFORE_DIFF
 
 CREATE DATABASE IF NOT EXISTS test_db COMMENT 'Hive test database';

http://git-wip-us.apache.org/repos/asf/hive/blob/95d22735/ql/src/test/queries/clientpositive/authorization_6.q
----------------------------------------------------------------------
diff --git a/ql/src/test/queries/clientpositive/authorization_6.q b/ql/src/test/queries/clientpositive/authorization_6.q
index 258ada4..5f9bde7 100644
--- a/ql/src/test/queries/clientpositive/authorization_6.q
+++ b/ql/src/test/queries/clientpositive/authorization_6.q
@@ -1,3 +1,5 @@
+set hive.security.authorization.manager=org.apache.hadoop.hive.ql.security.authorization.DefaultHiveAuthorizationProvider;
+
 -- SORT_BEFORE_DIFF
 
 create table src_auth_tmp as select * from src;

http://git-wip-us.apache.org/repos/asf/hive/blob/95d22735/ql/src/test/queries/clientpositive/authorization_7.q
----------------------------------------------------------------------
diff --git a/ql/src/test/queries/clientpositive/authorization_7.q b/ql/src/test/queries/clientpositive/authorization_7.q
index ae49000..216951e 100644
--- a/ql/src/test/queries/clientpositive/authorization_7.q
+++ b/ql/src/test/queries/clientpositive/authorization_7.q
@@ -1,3 +1,5 @@
+set hive.security.authorization.manager=org.apache.hadoop.hive.ql.security.authorization.DefaultHiveAuthorizationProvider;
+
 GRANT ALL TO USER hive_test_user;
 SET hive.security.authorization.enabled=true;
 CREATE TABLE src_authorization_7 (key int, value string);
@@ -12,4 +14,4 @@ SET hive.security.authorization.enabled=true;
 CREATE TABLE src_authorization_7 (key int, value string);
 DESCRIBE src_authorization_7;
 DROP TABLE  src_authorization_7;
-REVOKE ALL FROM GROUP hive_test_group1;
\ No newline at end of file
+REVOKE ALL FROM GROUP hive_test_group1;

http://git-wip-us.apache.org/repos/asf/hive/blob/95d22735/ql/src/test/queries/clientpositive/authorization_8.q
----------------------------------------------------------------------
diff --git a/ql/src/test/queries/clientpositive/authorization_8.q b/ql/src/test/queries/clientpositive/authorization_8.q
index 67fcf31..b8571aa 100644
--- a/ql/src/test/queries/clientpositive/authorization_8.q
+++ b/ql/src/test/queries/clientpositive/authorization_8.q
@@ -1,3 +1,4 @@
+set hive.security.authorization.manager=org.apache.hadoop.hive.ql.security.authorization.DefaultHiveAuthorizationProvider;
 set hive.security.authorization.enabled=true;
 GRANT ALL TO USER hive_test_user;
 CREATE TABLE tbl_j5jbymsx8e (key INT, value STRING) PARTITIONED BY (ds STRING);

http://git-wip-us.apache.org/repos/asf/hive/blob/95d22735/ql/src/test/queries/clientpositive/authorization_9.q
----------------------------------------------------------------------
diff --git a/ql/src/test/queries/clientpositive/authorization_9.q b/ql/src/test/queries/clientpositive/authorization_9.q
index ed62c45..5f72665 100644
--- a/ql/src/test/queries/clientpositive/authorization_9.q
+++ b/ql/src/test/queries/clientpositive/authorization_9.q
@@ -1,3 +1,4 @@
+set hive.security.authorization.manager=org.apache.hadoop.hive.ql.security.authorization.DefaultHiveAuthorizationProvider;
 -- SORT_BEFORE_DIFF
 
 create table dummy (key string, value string);

http://git-wip-us.apache.org/repos/asf/hive/blob/95d22735/ql/src/test/queries/clientpositive/authorization_default_create_table_owner_privs.q
----------------------------------------------------------------------
diff --git a/ql/src/test/queries/clientpositive/authorization_default_create_table_owner_privs.q b/ql/src/test/queries/clientpositive/authorization_default_create_table_owner_privs.q
index c265733..e533ee7 100644
--- a/ql/src/test/queries/clientpositive/authorization_default_create_table_owner_privs.q
+++ b/ql/src/test/queries/clientpositive/authorization_default_create_table_owner_privs.q
@@ -1,3 +1,4 @@
+set hive.security.authorization.manager=org.apache.hadoop.hive.ql.security.authorization.DefaultHiveAuthorizationProvider;
 set hive.security.authorization.createtable.owner.grants=ALL;
 
 create table default_auth_table_creator_priv_test(i int);

http://git-wip-us.apache.org/repos/asf/hive/blob/95d22735/ql/src/test/queries/clientpositive/authorization_explain.q
----------------------------------------------------------------------
diff --git a/ql/src/test/queries/clientpositive/authorization_explain.q b/ql/src/test/queries/clientpositive/authorization_explain.q
index fe376bf..6a9475c 100644
--- a/ql/src/test/queries/clientpositive/authorization_explain.q
+++ b/ql/src/test/queries/clientpositive/authorization_explain.q
@@ -1,3 +1,4 @@
+set hive.security.authorization.manager=org.apache.hadoop.hive.ql.security.authorization.DefaultHiveAuthorizationProvider;
 set hive.mapred.mode=nonstrict;
 set hive.security.authorization.enabled=true;
 

http://git-wip-us.apache.org/repos/asf/hive/blob/95d22735/ql/src/test/queries/clientpositive/authorization_show_role_principals_v1.q
----------------------------------------------------------------------
diff --git a/ql/src/test/queries/clientpositive/authorization_show_role_principals_v1.q b/ql/src/test/queries/clientpositive/authorization_show_role_principals_v1.q
index 50e9dc2..45e89c5 100644
--- a/ql/src/test/queries/clientpositive/authorization_show_role_principals_v1.q
+++ b/ql/src/test/queries/clientpositive/authorization_show_role_principals_v1.q
@@ -1,3 +1,4 @@
+set hive.security.authorization.manager=org.apache.hadoop.hive.ql.security.authorization.DefaultHiveAuthorizationProvider;
 create role role1;
 grant role1 to user user1 with admin option;
 grant role1 to user user2 with admin option;

http://git-wip-us.apache.org/repos/asf/hive/blob/95d22735/ql/src/test/queries/clientpositive/exim_21_export_authsuccess.q
----------------------------------------------------------------------
diff --git a/ql/src/test/queries/clientpositive/exim_21_export_authsuccess.q b/ql/src/test/queries/clientpositive/exim_21_export_authsuccess.q
index 293a011..1e3eaee 100644
--- a/ql/src/test/queries/clientpositive/exim_21_export_authsuccess.q
+++ b/ql/src/test/queries/clientpositive/exim_21_export_authsuccess.q
@@ -1,3 +1,4 @@
+set hive.security.authorization.manager=org.apache.hadoop.hive.ql.security.authorization.DefaultHiveAuthorizationProvider;
 set hive.test.mode=true;
 set hive.test.mode.prefix=;
 

http://git-wip-us.apache.org/repos/asf/hive/blob/95d22735/ql/src/test/queries/clientpositive/exim_22_import_exist_authsuccess.q
----------------------------------------------------------------------
diff --git a/ql/src/test/queries/clientpositive/exim_22_import_exist_authsuccess.q b/ql/src/test/queries/clientpositive/exim_22_import_exist_authsuccess.q
index 03714ab..606f9af 100644
--- a/ql/src/test/queries/clientpositive/exim_22_import_exist_authsuccess.q
+++ b/ql/src/test/queries/clientpositive/exim_22_import_exist_authsuccess.q
@@ -1,6 +1,7 @@
 set hive.test.mode=true;
 set hive.test.mode.prefix=;
 set hive.test.mode.nosamplelist=exim_department,exim_employee;
+set hive.security.authorization.manager=org.apache.hadoop.hive.ql.security.authorization.DefaultHiveAuthorizationProvider;
 
 create table exim_department ( dep_id int) stored as textfile;
 load data local inpath "../../data/files/test.dat" into table exim_department;

http://git-wip-us.apache.org/repos/asf/hive/blob/95d22735/ql/src/test/queries/clientpositive/exim_23_import_part_authsuccess.q
----------------------------------------------------------------------
diff --git a/ql/src/test/queries/clientpositive/exim_23_import_part_authsuccess.q b/ql/src/test/queries/clientpositive/exim_23_import_part_authsuccess.q
index 9012b0e..316f2e0 100644
--- a/ql/src/test/queries/clientpositive/exim_23_import_part_authsuccess.q
+++ b/ql/src/test/queries/clientpositive/exim_23_import_part_authsuccess.q
@@ -2,6 +2,7 @@ set hive.mapred.mode=nonstrict;
 set hive.test.mode=true;
 set hive.test.mode.prefix=;
 set hive.test.mode.nosamplelist=exim_department,exim_employee;
+set hive.security.authorization.manager=org.apache.hadoop.hive.ql.security.authorization.DefaultHiveAuthorizationProvider;
 
 create table exim_employee ( emp_id int comment "employee id") 	
 	comment "employee table"

http://git-wip-us.apache.org/repos/asf/hive/blob/95d22735/ql/src/test/queries/clientpositive/exim_24_import_nonexist_authsuccess.q
----------------------------------------------------------------------
diff --git a/ql/src/test/queries/clientpositive/exim_24_import_nonexist_authsuccess.q b/ql/src/test/queries/clientpositive/exim_24_import_nonexist_authsuccess.q
index 8934c47..8ded70b 100644
--- a/ql/src/test/queries/clientpositive/exim_24_import_nonexist_authsuccess.q
+++ b/ql/src/test/queries/clientpositive/exim_24_import_nonexist_authsuccess.q
@@ -1,6 +1,7 @@
 set hive.test.mode=true;
 set hive.test.mode.prefix=;
 set hive.test.mode.nosamplelist=exim_department,exim_employee;
+set hive.security.authorization.manager=org.apache.hadoop.hive.ql.security.authorization.DefaultHiveAuthorizationProvider;
 
 create table exim_department ( dep_id int) stored as textfile;
 load data local inpath "../../data/files/test.dat" into table exim_department;

http://git-wip-us.apache.org/repos/asf/hive/blob/95d22735/ql/src/test/queries/clientpositive/index_auth.q
----------------------------------------------------------------------
diff --git a/ql/src/test/queries/clientpositive/index_auth.q b/ql/src/test/queries/clientpositive/index_auth.q
index 03d77f1..b12b742 100644
--- a/ql/src/test/queries/clientpositive/index_auth.q
+++ b/ql/src/test/queries/clientpositive/index_auth.q
@@ -1,5 +1,7 @@
 set hive.stats.dbclass=fs;
 SET hive.input.format=org.apache.hadoop.hive.ql.io.HiveInputFormat;
+set hive.security.authorization.manager=org.apache.hadoop.hive.ql.security.authorization.DefaultHiveAuthorizationProvider;
+
 create table foobar(key int, value string) PARTITIONED BY (ds string, hr string);
 alter table foobar add partition (ds='2008-04-08',hr='12');
 

http://git-wip-us.apache.org/repos/asf/hive/blob/95d22735/ql/src/test/queries/clientpositive/keyword_1.q
----------------------------------------------------------------------
diff --git a/ql/src/test/queries/clientpositive/keyword_1.q b/ql/src/test/queries/clientpositive/keyword_1.q
index d274515..9277725 100644
--- a/ql/src/test/queries/clientpositive/keyword_1.q
+++ b/ql/src/test/queries/clientpositive/keyword_1.q
@@ -1,3 +1,5 @@
+set hive.security.authorization.manager=org.apache.hadoop.hive.ql.security.authorization.DefaultHiveAuthorizationProvider;
+
 -- SORT_BEFORE_DIFF
 
 create table test_user (`user` string, `group` string);
@@ -16,4 +18,4 @@ explain select role from test_user;
 
 show grant user hive_test on table test_user;
 
-drop table test_user;
\ No newline at end of file
+drop table test_user;

http://git-wip-us.apache.org/repos/asf/hive/blob/95d22735/ql/src/test/queries/clientpositive/load_exist_part_authsuccess.q
----------------------------------------------------------------------
diff --git a/ql/src/test/queries/clientpositive/load_exist_part_authsuccess.q b/ql/src/test/queries/clientpositive/load_exist_part_authsuccess.q
index 35eb219..1ce4824 100644
--- a/ql/src/test/queries/clientpositive/load_exist_part_authsuccess.q
+++ b/ql/src/test/queries/clientpositive/load_exist_part_authsuccess.q
@@ -1,3 +1,4 @@
+set hive.security.authorization.manager=org.apache.hadoop.hive.ql.security.authorization.DefaultHiveAuthorizationProvider;
 create table hive_test_src ( col1 string ) partitioned by (pcol1 string) stored as textfile;
 alter table hive_test_src add partition (pcol1 = 'test_part');
 set hive.security.authorization.enabled=true;

http://git-wip-us.apache.org/repos/asf/hive/blob/95d22735/ql/src/test/queries/clientpositive/load_nonpart_authsuccess.q
----------------------------------------------------------------------
diff --git a/ql/src/test/queries/clientpositive/load_nonpart_authsuccess.q b/ql/src/test/queries/clientpositive/load_nonpart_authsuccess.q
index fdee451..29d4e80 100644
--- a/ql/src/test/queries/clientpositive/load_nonpart_authsuccess.q
+++ b/ql/src/test/queries/clientpositive/load_nonpart_authsuccess.q
@@ -1,3 +1,4 @@
+set hive.security.authorization.manager=org.apache.hadoop.hive.ql.security.authorization.DefaultHiveAuthorizationProvider;
 create table hive_test_src ( col1 string ) stored as textfile;
 set hive.security.authorization.enabled=true;
 grant Update on table hive_test_src to user hive_test_user;

http://git-wip-us.apache.org/repos/asf/hive/blob/95d22735/ql/src/test/queries/clientpositive/load_part_authsuccess.q
----------------------------------------------------------------------
diff --git a/ql/src/test/queries/clientpositive/load_part_authsuccess.q b/ql/src/test/queries/clientpositive/load_part_authsuccess.q
index cee5873..868fd6c 100644
--- a/ql/src/test/queries/clientpositive/load_part_authsuccess.q
+++ b/ql/src/test/queries/clientpositive/load_part_authsuccess.q
@@ -1,3 +1,4 @@
+set hive.security.authorization.manager=org.apache.hadoop.hive.ql.security.authorization.DefaultHiveAuthorizationProvider;
 create table hive_test_src ( col1 string ) partitioned by (pcol1 string) stored as textfile;
 set hive.security.authorization.enabled=true;
 grant Update on table hive_test_src to user hive_test_user;

http://git-wip-us.apache.org/repos/asf/hive/blob/95d22735/ql/src/test/queries/clientpositive/show_roles.q
----------------------------------------------------------------------
diff --git a/ql/src/test/queries/clientpositive/show_roles.q b/ql/src/test/queries/clientpositive/show_roles.q
index d8ce96a..9e5a6c3 100644
--- a/ql/src/test/queries/clientpositive/show_roles.q
+++ b/ql/src/test/queries/clientpositive/show_roles.q
@@ -1,3 +1,5 @@
+set hive.security.authorization.manager=org.apache.hadoop.hive.ql.security.authorization.DefaultHiveAuthorizationProvider;
+
 create role role1;
 create role role2;
 

http://git-wip-us.apache.org/repos/asf/hive/blob/95d22735/ql/src/test/results/clientnegative/authorization_cli_auth_enable.q.out
----------------------------------------------------------------------
diff --git a/ql/src/test/results/clientnegative/authorization_cli_auth_enable.q.out b/ql/src/test/results/clientnegative/authorization_cli_auth_enable.q.out
deleted file mode 100644
index 252eb66..0000000
--- a/ql/src/test/results/clientnegative/authorization_cli_auth_enable.q.out
+++ /dev/null
@@ -1 +0,0 @@
-FAILED: RuntimeException org.apache.hadoop.hive.ql.security.authorization.plugin.HiveAuthzPluginException: SQL standards based authorization should not be enabled from hive cliInstead the use of storage based authorization in hive metastore is reccomended. Set hive.security.authorization.enabled=false to disable authz within cli

http://git-wip-us.apache.org/repos/asf/hive/blob/95d22735/ql/src/test/results/clientnegative/join_nonexistent_part.q.out
----------------------------------------------------------------------
diff --git a/ql/src/test/results/clientnegative/join_nonexistent_part.q.out b/ql/src/test/results/clientnegative/join_nonexistent_part.q.out
deleted file mode 100644
index a924895..0000000
--- a/ql/src/test/results/clientnegative/join_nonexistent_part.q.out
+++ /dev/null
@@ -1 +0,0 @@
-Authorization failed:No privilege 'Select' found for inputs { database:default, table:srcpart, columnName:key}. Use SHOW GRANT to get more details.

http://git-wip-us.apache.org/repos/asf/hive/blob/95d22735/ql/src/test/results/clientpositive/authorization_9.q.out
----------------------------------------------------------------------
diff --git a/ql/src/test/results/clientpositive/authorization_9.q.out b/ql/src/test/results/clientpositive/authorization_9.q.out
index 7f95f5e..6bb8ecb 100644
--- a/ql/src/test/results/clientpositive/authorization_9.q.out
+++ b/ql/src/test/results/clientpositive/authorization_9.q.out
@@ -46,7 +46,67 @@ POSTHOOK: query: show grant user hive_test_user on all
 POSTHOOK: type: SHOW_GRANT
 				hive_test_user	USER	SELECT	false	-1	hive_test_user
 default				hive_test_user	USER	SELECT	false	-1	hive_test_user
+default	alltypesorc			hive_test_user	USER	DELETE	true	-1	hive_test_user
+default	alltypesorc			hive_test_user	USER	INSERT	true	-1	hive_test_user
+default	alltypesorc			hive_test_user	USER	SELECT	true	-1	hive_test_user
+default	alltypesorc			hive_test_user	USER	UPDATE	true	-1	hive_test_user
+default	cbo_t1			hive_test_user	USER	DELETE	true	-1	hive_test_user
+default	cbo_t1			hive_test_user	USER	INSERT	true	-1	hive_test_user
+default	cbo_t1			hive_test_user	USER	SELECT	true	-1	hive_test_user
+default	cbo_t1			hive_test_user	USER	UPDATE	true	-1	hive_test_user
+default	cbo_t2			hive_test_user	USER	DELETE	true	-1	hive_test_user
+default	cbo_t2			hive_test_user	USER	INSERT	true	-1	hive_test_user
+default	cbo_t2			hive_test_user	USER	SELECT	true	-1	hive_test_user
+default	cbo_t2			hive_test_user	USER	UPDATE	true	-1	hive_test_user
+default	cbo_t3			hive_test_user	USER	DELETE	true	-1	hive_test_user
+default	cbo_t3			hive_test_user	USER	INSERT	true	-1	hive_test_user
+default	cbo_t3			hive_test_user	USER	SELECT	true	-1	hive_test_user
+default	cbo_t3			hive_test_user	USER	UPDATE	true	-1	hive_test_user
 default	dummy			hive_test_user	USER	SELECT	false	-1	hive_test_user
+default	lineitem			hive_test_user	USER	DELETE	true	-1	hive_test_user
+default	lineitem			hive_test_user	USER	INSERT	true	-1	hive_test_user
+default	lineitem			hive_test_user	USER	SELECT	true	-1	hive_test_user
+default	lineitem			hive_test_user	USER	UPDATE	true	-1	hive_test_user
+default	part			hive_test_user	USER	DELETE	true	-1	hive_test_user
+default	part			hive_test_user	USER	INSERT	true	-1	hive_test_user
+default	part			hive_test_user	USER	SELECT	true	-1	hive_test_user
+default	part			hive_test_user	USER	UPDATE	true	-1	hive_test_user
+default	src			hive_test_user	USER	DELETE	true	-1	hive_test_user
+default	src			hive_test_user	USER	INSERT	true	-1	hive_test_user
+default	src			hive_test_user	USER	SELECT	true	-1	hive_test_user
+default	src			hive_test_user	USER	UPDATE	true	-1	hive_test_user
+default	src1			hive_test_user	USER	DELETE	true	-1	hive_test_user
+default	src1			hive_test_user	USER	INSERT	true	-1	hive_test_user
+default	src1			hive_test_user	USER	SELECT	true	-1	hive_test_user
+default	src1			hive_test_user	USER	UPDATE	true	-1	hive_test_user
+default	src_cbo			hive_test_user	USER	DELETE	true	-1	hive_test_user
+default	src_cbo			hive_test_user	USER	INSERT	true	-1	hive_test_user
+default	src_cbo			hive_test_user	USER	SELECT	true	-1	hive_test_user
+default	src_cbo			hive_test_user	USER	UPDATE	true	-1	hive_test_user
+default	src_json			hive_test_user	USER	DELETE	true	-1	hive_test_user
+default	src_json			hive_test_user	USER	INSERT	true	-1	hive_test_user
+default	src_json			hive_test_user	USER	SELECT	true	-1	hive_test_user
+default	src_json			hive_test_user	USER	UPDATE	true	-1	hive_test_user
+default	src_sequencefile			hive_test_user	USER	DELETE	true	-1	hive_test_user
+default	src_sequencefile			hive_test_user	USER	INSERT	true	-1	hive_test_user
+default	src_sequencefile			hive_test_user	USER	SELECT	true	-1	hive_test_user
+default	src_sequencefile			hive_test_user	USER	UPDATE	true	-1	hive_test_user
+default	src_thrift			hive_test_user	USER	DELETE	true	-1	hive_test_user
+default	src_thrift			hive_test_user	USER	INSERT	true	-1	hive_test_user
+default	src_thrift			hive_test_user	USER	SELECT	true	-1	hive_test_user
+default	src_thrift			hive_test_user	USER	UPDATE	true	-1	hive_test_user
+default	srcbucket			hive_test_user	USER	DELETE	true	-1	hive_test_user
+default	srcbucket			hive_test_user	USER	INSERT	true	-1	hive_test_user
+default	srcbucket			hive_test_user	USER	SELECT	true	-1	hive_test_user
+default	srcbucket			hive_test_user	USER	UPDATE	true	-1	hive_test_user
+default	srcbucket2			hive_test_user	USER	DELETE	true	-1	hive_test_user
+default	srcbucket2			hive_test_user	USER	INSERT	true	-1	hive_test_user
+default	srcbucket2			hive_test_user	USER	SELECT	true	-1	hive_test_user
+default	srcbucket2			hive_test_user	USER	UPDATE	true	-1	hive_test_user
+default	srcpart			hive_test_user	USER	DELETE	true	-1	hive_test_user
+default	srcpart			hive_test_user	USER	INSERT	true	-1	hive_test_user
+default	srcpart			hive_test_user	USER	SELECT	true	-1	hive_test_user
+default	srcpart			hive_test_user	USER	UPDATE	true	-1	hive_test_user
 default	dummy		[key]	hive_test_user	USER	SELECT	false	-1	hive_test_user
 default	dummy		[value]	hive_test_user	USER	SELECT	false	-1	hive_test_user
 PREHOOK: query: grant select to user hive_test_user2
@@ -78,8 +138,68 @@ POSTHOOK: type: SHOW_GRANT
 				hive_test_user2	USER	SELECT	false	-1	hive_test_user
 default				hive_test_user	USER	SELECT	false	-1	hive_test_user
 default				hive_test_user2	USER	SELECT	false	-1	hive_test_user
+default	alltypesorc			hive_test_user	USER	DELETE	true	-1	hive_test_user
+default	alltypesorc			hive_test_user	USER	INSERT	true	-1	hive_test_user
+default	alltypesorc			hive_test_user	USER	SELECT	true	-1	hive_test_user
+default	alltypesorc			hive_test_user	USER	UPDATE	true	-1	hive_test_user
+default	cbo_t1			hive_test_user	USER	DELETE	true	-1	hive_test_user
+default	cbo_t1			hive_test_user	USER	INSERT	true	-1	hive_test_user
+default	cbo_t1			hive_test_user	USER	SELECT	true	-1	hive_test_user
+default	cbo_t1			hive_test_user	USER	UPDATE	true	-1	hive_test_user
+default	cbo_t2			hive_test_user	USER	DELETE	true	-1	hive_test_user
+default	cbo_t2			hive_test_user	USER	INSERT	true	-1	hive_test_user
+default	cbo_t2			hive_test_user	USER	SELECT	true	-1	hive_test_user
+default	cbo_t2			hive_test_user	USER	UPDATE	true	-1	hive_test_user
+default	cbo_t3			hive_test_user	USER	DELETE	true	-1	hive_test_user
+default	cbo_t3			hive_test_user	USER	INSERT	true	-1	hive_test_user
+default	cbo_t3			hive_test_user	USER	SELECT	true	-1	hive_test_user
+default	cbo_t3			hive_test_user	USER	UPDATE	true	-1	hive_test_user
 default	dummy			hive_test_user	USER	SELECT	false	-1	hive_test_user
 default	dummy			hive_test_user2	USER	SELECT	false	-1	hive_test_user
+default	lineitem			hive_test_user	USER	DELETE	true	-1	hive_test_user
+default	lineitem			hive_test_user	USER	INSERT	true	-1	hive_test_user
+default	lineitem			hive_test_user	USER	SELECT	true	-1	hive_test_user
+default	lineitem			hive_test_user	USER	UPDATE	true	-1	hive_test_user
+default	part			hive_test_user	USER	DELETE	true	-1	hive_test_user
+default	part			hive_test_user	USER	INSERT	true	-1	hive_test_user
+default	part			hive_test_user	USER	SELECT	true	-1	hive_test_user
+default	part			hive_test_user	USER	UPDATE	true	-1	hive_test_user
+default	src			hive_test_user	USER	DELETE	true	-1	hive_test_user
+default	src			hive_test_user	USER	INSERT	true	-1	hive_test_user
+default	src			hive_test_user	USER	SELECT	true	-1	hive_test_user
+default	src			hive_test_user	USER	UPDATE	true	-1	hive_test_user
+default	src1			hive_test_user	USER	DELETE	true	-1	hive_test_user
+default	src1			hive_test_user	USER	INSERT	true	-1	hive_test_user
+default	src1			hive_test_user	USER	SELECT	true	-1	hive_test_user
+default	src1			hive_test_user	USER	UPDATE	true	-1	hive_test_user
+default	src_cbo			hive_test_user	USER	DELETE	true	-1	hive_test_user
+default	src_cbo			hive_test_user	USER	INSERT	true	-1	hive_test_user
+default	src_cbo			hive_test_user	USER	SELECT	true	-1	hive_test_user
+default	src_cbo			hive_test_user	USER	UPDATE	true	-1	hive_test_user
+default	src_json			hive_test_user	USER	DELETE	true	-1	hive_test_user
+default	src_json			hive_test_user	USER	INSERT	true	-1	hive_test_user
+default	src_json			hive_test_user	USER	SELECT	true	-1	hive_test_user
+default	src_json			hive_test_user	USER	UPDATE	true	-1	hive_test_user
+default	src_sequencefile			hive_test_user	USER	DELETE	true	-1	hive_test_user
+default	src_sequencefile			hive_test_user	USER	INSERT	true	-1	hive_test_user
+default	src_sequencefile			hive_test_user	USER	SELECT	true	-1	hive_test_user
+default	src_sequencefile			hive_test_user	USER	UPDATE	true	-1	hive_test_user
+default	src_thrift			hive_test_user	USER	DELETE	true	-1	hive_test_user
+default	src_thrift			hive_test_user	USER	INSERT	true	-1	hive_test_user
+default	src_thrift			hive_test_user	USER	SELECT	true	-1	hive_test_user
+default	src_thrift			hive_test_user	USER	UPDATE	true	-1	hive_test_user
+default	srcbucket			hive_test_user	USER	DELETE	true	-1	hive_test_user
+default	srcbucket			hive_test_user	USER	INSERT	true	-1	hive_test_user
+default	srcbucket			hive_test_user	USER	SELECT	true	-1	hive_test_user
+default	srcbucket			hive_test_user	USER	UPDATE	true	-1	hive_test_user
+default	srcbucket2			hive_test_user	USER	DELETE	true	-1	hive_test_user
+default	srcbucket2			hive_test_user	USER	INSERT	true	-1	hive_test_user
+default	srcbucket2			hive_test_user	USER	SELECT	true	-1	hive_test_user
+default	srcbucket2			hive_test_user	USER	UPDATE	true	-1	hive_test_user
+default	srcpart			hive_test_user	USER	DELETE	true	-1	hive_test_user
+default	srcpart			hive_test_user	USER	INSERT	true	-1	hive_test_user
+default	srcpart			hive_test_user	USER	SELECT	true	-1	hive_test_user
+default	srcpart			hive_test_user	USER	UPDATE	true	-1	hive_test_user
 default	dummy		[key]	hive_test_user	USER	SELECT	false	-1	hive_test_user
 default	dummy		[key]	hive_test_user2	USER	SELECT	false	-1	hive_test_user
 default	dummy		[value]	hive_test_user	USER	SELECT	false	-1	hive_test_user
@@ -90,7 +210,67 @@ POSTHOOK: query: show grant user hive_test_user on all
 POSTHOOK: type: SHOW_GRANT
 				hive_test_user	USER	SELECT	false	-1	hive_test_user
 default				hive_test_user	USER	SELECT	false	-1	hive_test_user
+default	alltypesorc			hive_test_user	USER	DELETE	true	-1	hive_test_user
+default	alltypesorc			hive_test_user	USER	INSERT	true	-1	hive_test_user
+default	alltypesorc			hive_test_user	USER	SELECT	true	-1	hive_test_user
+default	alltypesorc			hive_test_user	USER	UPDATE	true	-1	hive_test_user
+default	cbo_t1			hive_test_user	USER	DELETE	true	-1	hive_test_user
+default	cbo_t1			hive_test_user	USER	INSERT	true	-1	hive_test_user
+default	cbo_t1			hive_test_user	USER	SELECT	true	-1	hive_test_user
+default	cbo_t1			hive_test_user	USER	UPDATE	true	-1	hive_test_user
+default	cbo_t2			hive_test_user	USER	DELETE	true	-1	hive_test_user
+default	cbo_t2			hive_test_user	USER	INSERT	true	-1	hive_test_user
+default	cbo_t2			hive_test_user	USER	SELECT	true	-1	hive_test_user
+default	cbo_t2			hive_test_user	USER	UPDATE	true	-1	hive_test_user
+default	cbo_t3			hive_test_user	USER	DELETE	true	-1	hive_test_user
+default	cbo_t3			hive_test_user	USER	INSERT	true	-1	hive_test_user
+default	cbo_t3			hive_test_user	USER	SELECT	true	-1	hive_test_user
+default	cbo_t3			hive_test_user	USER	UPDATE	true	-1	hive_test_user
 default	dummy			hive_test_user	USER	SELECT	false	-1	hive_test_user
+default	lineitem			hive_test_user	USER	DELETE	true	-1	hive_test_user
+default	lineitem			hive_test_user	USER	INSERT	true	-1	hive_test_user
+default	lineitem			hive_test_user	USER	SELECT	true	-1	hive_test_user
+default	lineitem			hive_test_user	USER	UPDATE	true	-1	hive_test_user
+default	part			hive_test_user	USER	DELETE	true	-1	hive_test_user
+default	part			hive_test_user	USER	INSERT	true	-1	hive_test_user
+default	part			hive_test_user	USER	SELECT	true	-1	hive_test_user
+default	part			hive_test_user	USER	UPDATE	true	-1	hive_test_user
+default	src			hive_test_user	USER	DELETE	true	-1	hive_test_user
+default	src			hive_test_user	USER	INSERT	true	-1	hive_test_user
+default	src			hive_test_user	USER	SELECT	true	-1	hive_test_user
+default	src			hive_test_user	USER	UPDATE	true	-1	hive_test_user
+default	src1			hive_test_user	USER	DELETE	true	-1	hive_test_user
+default	src1			hive_test_user	USER	INSERT	true	-1	hive_test_user
+default	src1			hive_test_user	USER	SELECT	true	-1	hive_test_user
+default	src1			hive_test_user	USER	UPDATE	true	-1	hive_test_user
+default	src_cbo			hive_test_user	USER	DELETE	true	-1	hive_test_user
+default	src_cbo			hive_test_user	USER	INSERT	true	-1	hive_test_user
+default	src_cbo			hive_test_user	USER	SELECT	true	-1	hive_test_user
+default	src_cbo			hive_test_user	USER	UPDATE	true	-1	hive_test_user
+default	src_json			hive_test_user	USER	DELETE	true	-1	hive_test_user
+default	src_json			hive_test_user	USER	INSERT	true	-1	hive_test_user
+default	src_json			hive_test_user	USER	SELECT	true	-1	hive_test_user
+default	src_json			hive_test_user	USER	UPDATE	true	-1	hive_test_user
+default	src_sequencefile			hive_test_user	USER	DELETE	true	-1	hive_test_user
+default	src_sequencefile			hive_test_user	USER	INSERT	true	-1	hive_test_user
+default	src_sequencefile			hive_test_user	USER	SELECT	true	-1	hive_test_user
+default	src_sequencefile			hive_test_user	USER	UPDATE	true	-1	hive_test_user
+default	src_thrift			hive_test_user	USER	DELETE	true	-1	hive_test_user
+default	src_thrift			hive_test_user	USER	INSERT	true	-1	hive_test_user
+default	src_thrift			hive_test_user	USER	SELECT	true	-1	hive_test_user
+default	src_thrift			hive_test_user	USER	UPDATE	true	-1	hive_test_user
+default	srcbucket			hive_test_user	USER	DELETE	true	-1	hive_test_user
+default	srcbucket			hive_test_user	USER	INSERT	true	-1	hive_test_user
+default	srcbucket			hive_test_user	USER	SELECT	true	-1	hive_test_user
+default	srcbucket			hive_test_user	USER	UPDATE	true	-1	hive_test_user
+default	srcbucket2			hive_test_user	USER	DELETE	true	-1	hive_test_user
+default	srcbucket2			hive_test_user	USER	INSERT	true	-1	hive_test_user
+default	srcbucket2			hive_test_user	USER	SELECT	true	-1	hive_test_user
+default	srcbucket2			hive_test_user	USER	UPDATE	true	-1	hive_test_user
+default	srcpart			hive_test_user	USER	DELETE	true	-1	hive_test_user
+default	srcpart			hive_test_user	USER	INSERT	true	-1	hive_test_user
+default	srcpart			hive_test_user	USER	SELECT	true	-1	hive_test_user
+default	srcpart			hive_test_user	USER	UPDATE	true	-1	hive_test_user
 default	dummy		[key]	hive_test_user	USER	SELECT	false	-1	hive_test_user
 default	dummy		[value]	hive_test_user	USER	SELECT	false	-1	hive_test_user
 PREHOOK: query: show grant user hive_test_user2 on all

http://git-wip-us.apache.org/repos/asf/hive/blob/95d22735/ql/src/test/results/clientpositive/authorization_explain.q.java1.7.out
----------------------------------------------------------------------
diff --git a/ql/src/test/results/clientpositive/authorization_explain.q.java1.7.out b/ql/src/test/results/clientpositive/authorization_explain.q.java1.7.out
index b7ec209..a9ed049 100644
--- a/ql/src/test/results/clientpositive/authorization_explain.q.java1.7.out
+++ b/ql/src/test/results/clientpositive/authorization_explain.q.java1.7.out
@@ -20,9 +20,6 @@ CURRENT_USER:
   hive_test_user
 OPERATION: 
   QUERY
-AUTHORIZATION_FAILURES: 
-  No privilege 'Select' found for inputs { database:default, table:src, columnName:key}
-  No privilege 'Select' found for inputs { database:default, table:srcpart, columnName:key}
 Warning: Shuffle Join JOIN[7][tables = [$hdt$_0, $hdt$_1]] in Stage 'Stage-1:MAPRED' is a cross product
 PREHOOK: query: explain formatted authorization select * from src join srcpart
 PREHOOK: type: QUERY

http://git-wip-us.apache.org/repos/asf/hive/blob/95d22735/ql/src/test/results/clientpositive/authorization_show_grant.q.out
----------------------------------------------------------------------
diff --git a/ql/src/test/results/clientpositive/authorization_show_grant.q.out b/ql/src/test/results/clientpositive/authorization_show_grant.q.out
index 2e7d7f6..7fa0b1c 100644
--- a/ql/src/test/results/clientpositive/authorization_show_grant.q.out
+++ b/ql/src/test/results/clientpositive/authorization_show_grant.q.out
@@ -111,6 +111,66 @@ PREHOOK: query: show grant
 PREHOOK: type: SHOW_GRANT
 POSTHOOK: query: show grant
 POSTHOOK: type: SHOW_GRANT
+default	alltypesorc			hive_test_user	USER	DELETE	true	-1	hive_test_user
+default	alltypesorc			hive_test_user	USER	INSERT	true	-1	hive_test_user
+default	alltypesorc			hive_test_user	USER	SELECT	true	-1	hive_test_user
+default	alltypesorc			hive_test_user	USER	UPDATE	true	-1	hive_test_user
+default	cbo_t1			hive_test_user	USER	DELETE	true	-1	hive_test_user
+default	cbo_t1			hive_test_user	USER	INSERT	true	-1	hive_test_user
+default	cbo_t1			hive_test_user	USER	SELECT	true	-1	hive_test_user
+default	cbo_t1			hive_test_user	USER	UPDATE	true	-1	hive_test_user
+default	cbo_t2			hive_test_user	USER	DELETE	true	-1	hive_test_user
+default	cbo_t2			hive_test_user	USER	INSERT	true	-1	hive_test_user
+default	cbo_t2			hive_test_user	USER	SELECT	true	-1	hive_test_user
+default	cbo_t2			hive_test_user	USER	UPDATE	true	-1	hive_test_user
+default	cbo_t3			hive_test_user	USER	DELETE	true	-1	hive_test_user
+default	cbo_t3			hive_test_user	USER	INSERT	true	-1	hive_test_user
+default	cbo_t3			hive_test_user	USER	SELECT	true	-1	hive_test_user
+default	cbo_t3			hive_test_user	USER	UPDATE	true	-1	hive_test_user
+default	lineitem			hive_test_user	USER	DELETE	true	-1	hive_test_user
+default	lineitem			hive_test_user	USER	INSERT	true	-1	hive_test_user
+default	lineitem			hive_test_user	USER	SELECT	true	-1	hive_test_user
+default	lineitem			hive_test_user	USER	UPDATE	true	-1	hive_test_user
+default	part			hive_test_user	USER	DELETE	true	-1	hive_test_user
+default	part			hive_test_user	USER	INSERT	true	-1	hive_test_user
+default	part			hive_test_user	USER	SELECT	true	-1	hive_test_user
+default	part			hive_test_user	USER	UPDATE	true	-1	hive_test_user
+default	src			hive_test_user	USER	DELETE	true	-1	hive_test_user
+default	src			hive_test_user	USER	INSERT	true	-1	hive_test_user
+default	src			hive_test_user	USER	SELECT	true	-1	hive_test_user
+default	src			hive_test_user	USER	UPDATE	true	-1	hive_test_user
+default	src1			hive_test_user	USER	DELETE	true	-1	hive_test_user
+default	src1			hive_test_user	USER	INSERT	true	-1	hive_test_user
+default	src1			hive_test_user	USER	SELECT	true	-1	hive_test_user
+default	src1			hive_test_user	USER	UPDATE	true	-1	hive_test_user
+default	src_cbo			hive_test_user	USER	DELETE	true	-1	hive_test_user
+default	src_cbo			hive_test_user	USER	INSERT	true	-1	hive_test_user
+default	src_cbo			hive_test_user	USER	SELECT	true	-1	hive_test_user
+default	src_cbo			hive_test_user	USER	UPDATE	true	-1	hive_test_user
+default	src_json			hive_test_user	USER	DELETE	true	-1	hive_test_user
+default	src_json			hive_test_user	USER	INSERT	true	-1	hive_test_user
+default	src_json			hive_test_user	USER	SELECT	true	-1	hive_test_user
+default	src_json			hive_test_user	USER	UPDATE	true	-1	hive_test_user
+default	src_sequencefile			hive_test_user	USER	DELETE	true	-1	hive_test_user
+default	src_sequencefile			hive_test_user	USER	INSERT	true	-1	hive_test_user
+default	src_sequencefile			hive_test_user	USER	SELECT	true	-1	hive_test_user
+default	src_sequencefile			hive_test_user	USER	UPDATE	true	-1	hive_test_user
+default	src_thrift			hive_test_user	USER	DELETE	true	-1	hive_test_user
+default	src_thrift			hive_test_user	USER	INSERT	true	-1	hive_test_user
+default	src_thrift			hive_test_user	USER	SELECT	true	-1	hive_test_user
+default	src_thrift			hive_test_user	USER	UPDATE	true	-1	hive_test_user
+default	srcbucket			hive_test_user	USER	DELETE	true	-1	hive_test_user
+default	srcbucket			hive_test_user	USER	INSERT	true	-1	hive_test_user
+default	srcbucket			hive_test_user	USER	SELECT	true	-1	hive_test_user
+default	srcbucket			hive_test_user	USER	UPDATE	true	-1	hive_test_user
+default	srcbucket2			hive_test_user	USER	DELETE	true	-1	hive_test_user
+default	srcbucket2			hive_test_user	USER	INSERT	true	-1	hive_test_user
+default	srcbucket2			hive_test_user	USER	SELECT	true	-1	hive_test_user
+default	srcbucket2			hive_test_user	USER	UPDATE	true	-1	hive_test_user
+default	srcpart			hive_test_user	USER	DELETE	true	-1	hive_test_user
+default	srcpart			hive_test_user	USER	INSERT	true	-1	hive_test_user
+default	srcpart			hive_test_user	USER	SELECT	true	-1	hive_test_user
+default	srcpart			hive_test_user	USER	UPDATE	true	-1	hive_test_user
 default	t1			rolea	ROLE	SELECT	false	-1	user1
 default	t1			user1	USER	DELETE	true	-1	hive_admin_user
 default	t1			user1	USER	INSERT	true	-1	hive_admin_user


[3/3] hive git commit: HIVE-11935: Race condition in HiveMetaStoreClient: isCompatibleWith and close (Daniel Dai, Reviewed by Alan Gates)

Posted by da...@apache.org.
HIVE-11935: Race condition in  HiveMetaStoreClient: isCompatibleWith and close (Daniel Dai, Reviewed by Alan Gates)


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

Branch: refs/heads/master
Commit: 949640919e47bf5c729c51ba396424f7101ff43b
Parents: 27a14d5
Author: Daniel Dai <da...@hortonworks.com>
Authored: Fri Dec 18 12:06:16 2015 -0800
Committer: Daniel Dai <da...@hortonworks.com>
Committed: Fri Dec 18 12:06:16 2015 -0800

----------------------------------------------------------------------
 .../org/apache/hadoop/hive/metastore/HiveMetaStoreClient.java | 7 +++++--
 1 file changed, 5 insertions(+), 2 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/hive/blob/94964091/metastore/src/java/org/apache/hadoop/hive/metastore/HiveMetaStoreClient.java
----------------------------------------------------------------------
diff --git a/metastore/src/java/org/apache/hadoop/hive/metastore/HiveMetaStoreClient.java b/metastore/src/java/org/apache/hadoop/hive/metastore/HiveMetaStoreClient.java
index c5e7a5f..178796d 100644
--- a/metastore/src/java/org/apache/hadoop/hive/metastore/HiveMetaStoreClient.java
+++ b/metastore/src/java/org/apache/hadoop/hive/metastore/HiveMetaStoreClient.java
@@ -309,13 +309,16 @@ public class HiveMetaStoreClient implements IMetaStoreClient {
 
   @Override
   public boolean isCompatibleWith(HiveConf conf) {
-    if (currentMetaVars == null) {
+    // Make a copy of currentMetaVars, there is a race condition that
+	// currentMetaVars might be changed during the execution of the method
+    Map<String, String> currentMetaVarsCopy = currentMetaVars;
+    if (currentMetaVarsCopy == null) {
       return false; // recreate
     }
     boolean compatible = true;
     for (ConfVars oneVar : HiveConf.metaVars) {
       // Since metaVars are all of different types, use string for comparison
-      String oldVar = currentMetaVars.get(oneVar.varname);
+      String oldVar = currentMetaVarsCopy.get(oneVar.varname);
       String newVar = conf.get(oneVar.varname, "");
       if (oldVar == null ||
           (oneVar.isCaseSensitive() ? !oldVar.equals(newVar) : !oldVar.equalsIgnoreCase(newVar))) {


[2/3] hive git commit: Merge branch 'master' of https://git-wip-us.apache.org/repos/asf/hive

Posted by da...@apache.org.
Merge branch 'master' of https://git-wip-us.apache.org/repos/asf/hive


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

Branch: refs/heads/master
Commit: 27a14d5a4cf00b34bdfd9c556c71b49fa2e58fff
Parents: 95d2273 1199754
Author: Daniel Dai <da...@hortonworks.com>
Authored: Fri Dec 18 12:04:17 2015 -0800
Committer: Daniel Dai <da...@hortonworks.com>
Committed: Fri Dec 18 12:04:17 2015 -0800

----------------------------------------------------------------------
 .../predicate/AccumuloPredicateHandler.java     |     4 +-
 .../predicate/TestAccumuloPredicateHandler.java |    36 +-
 common/pom.xml                                  |     5 +
 .../hadoop/hive/common/DiskRangeInfo.java       |    59 -
 .../common/metrics/common/MetricsConstant.java  |     8 +
 .../metrics/metrics2/CodahaleMetrics.java       |     7 +
 .../org/apache/hadoop/hive/conf/HiveConf.java   |   125 +-
 .../apache/hadoop/hive/ql/log/PerfLogger.java   |    56 +-
 .../apache/hive/common/util/BloomFilter.java    |   309 -
 .../org/apache/hive/common/util/Murmur3.java    |   335 -
 .../java/org/apache/hive/http/HttpServer.java   |    47 +
 .../hive/common/metrics/MetricsTestUtils.java   |    13 +-
 .../apache/hadoop/hive/conf/TestHiveConf.java   |    14 +
 .../apache/hive/common/util/TestMurmur3.java    |   224 -
 conf/ivysettings.xml                            |    12 +-
 data/conf/hive-site.xml                         |     5 +
 data/conf/llap/hive-site.xml                    |     5 +
 data/conf/llap/llap-daemon-site.xml             |     5 +
 data/conf/perf-reg/hive-site.xml                |   285 +
 data/conf/perf-reg/tez-site.xml                 |     6 +
 .../metastore_export/csv/TABLE_PARAMS.txt       |   102 +
 .../metastore_export/csv/TAB_COL_STATS.txt      |   259 +
 data/scripts/q_perf_test_init.sql               |   616 +
 .../hive/hbase/HiveHBaseTableInputFormat.java   |    11 +-
 .../test/results/positive/hbase_queries.q.out   |    38 +-
 .../src/test/templates/TestHBaseCliDriver.vm    |    63 +-
 .../templates/TestHBaseNegativeCliDriver.vm     |    64 +-
 .../hive/hcatalog/mapreduce/SpecialCases.java   |     2 +-
 .../hive/hcatalog/api/HCatClientHMSImpl.java    |    26 +-
 itests/custom-udfs/pom.xml                      |    62 +
 itests/custom-udfs/udf-classloader-udf1/pom.xml |    43 +
 .../src/main/java/hive/it/custom/udfs/UDF1.java |    58 +
 itests/custom-udfs/udf-classloader-udf2/pom.xml |    43 +
 .../src/main/java/hive/it/custom/udfs/UDF2.java |    60 +
 itests/custom-udfs/udf-classloader-util/pom.xml |    35 +
 .../src/main/java/hive/it/custom/udfs/Util.java |    25 +
 .../hive/thrift/TestHadoopAuthBridge23.java     |     4 -
 .../hive/metastore/TestMetaStoreMetrics.java    |   152 +-
 .../hbase/TestHBaseMetastoreMetrics.java        |   128 +
 .../hadoop/hive/ql/TestLocationQueries.java     |     2 +-
 .../plugin/TestHiveAuthorizerShowFilters.java   |    36 +-
 .../org/apache/hive/jdbc/TestJdbcDriver2.java   |     8 +
 .../hive/jdbc/miniHS2/TestHs2Metrics.java       |    42 +-
 itests/pom.xml                                  |     1 +
 itests/qtest/pom.xml                            |    21 +-
 .../test/resources/testconfiguration.properties |     1 +
 .../hadoop/hive/accumulo/AccumuloQTestUtil.java |     2 +-
 .../hadoop/hive/hbase/HBaseQTestUtil.java       |     2 +-
 .../hadoop/hive/hbase/HBaseTestSetup.java       |     9 +-
 .../org/apache/hadoop/hive/ql/QTestUtil.java    |   337 +-
 .../org/apache/hive/jdbc/HiveConnection.java    |     9 +-
 .../org/apache/hive/jdbc/HiveStatement.java     |    43 +-
 jdbc/src/java/org/apache/hive/jdbc/Utils.java   |     2 +
 .../hadoop/hive/llap/io/api/LlapIoProxy.java    |    78 -
 .../hadoop/hive/llap/io/api/LlapProxy.java      |   111 +
 .../hive/llap/registry/ServiceInstance.java     |     7 +
 .../registry/impl/LlapFixedRegistryImpl.java    |     7 +
 .../registry/impl/LlapYarnRegistryImpl.java     |    30 +-
 .../hive/llap/security/LlapTokenIdentifier.java |    82 +
 .../hive/llap/security/LlapTokenProvider.java   |    27 +
 .../daemon/rpc/LlapDaemonProtocolProtos.java    |  1059 +-
 .../hadoop/hive/llap/cache/BuddyAllocator.java  |     1 -
 .../llap/cache/LowLevelCacheMemoryManager.java  |    41 +-
 .../daemon/LlapDaemonProtocolBlockingPB.java    |     6 +
 .../LlapManagementProtocolBlockingPB.java       |    24 +
 .../hive/llap/daemon/impl/LlapDaemon.java       |    41 +-
 .../impl/LlapDaemonProtocolClientImpl.java      |     1 -
 .../impl/LlapDaemonProtocolServerImpl.java      |   155 +-
 .../impl/LlapManagementProtocolClientImpl.java  |    82 +
 .../hive/llap/daemon/impl/QueryFileCleaner.java |    96 -
 .../hive/llap/daemon/impl/QueryTracker.java     |   114 +-
 .../daemon/services/impl/LlapWebServices.java   |    33 +-
 .../llap/io/decode/OrcEncodedDataConsumer.java  |     4 +-
 .../llap/io/encoded/OrcEncodedDataReader.java   |    99 +-
 .../hive/llap/io/metadata/OrcFileMetadata.java  |    41 +-
 .../llap/io/metadata/OrcStripeMetadata.java     |    46 +-
 .../llap/metrics/LlapDaemonCacheMetrics.java    |    13 +-
 .../protocol/LlapTaskUmbilicalProtocol.java     |     3 +
 .../llap/security/LlapDaemonPolicyProvider.java |    38 +
 .../hive/llap/security/LlapSecurityHelper.java  |   155 +
 .../llap/security/LlapServerSecurityInfo.java   |    78 +
 .../hive/llap/security/LlapTokenSelector.java   |    53 +
 .../hive/llap/security/SecretManager.java       |    91 +
 .../llap/tezplugins/LlapTaskCommunicator.java   |    22 +-
 .../tezplugins/LlapUmbilicalPolicyProvider.java |    42 +
 .../hive/llap/tezplugins/TaskCommunicator.java  |    42 +-
 .../org.apache.hadoop.security.SecurityInfo     |    14 +
 ...rg.apache.hadoop.security.token.TokenRenewer |    14 +
 llap-server/src/main/resources/package.py       |     6 +-
 llap-server/src/main/resources/templates.py     |     2 +-
 .../src/protobuf/LlapDaemonProtocol.proto       |    11 +
 .../TestIncrementalObjectSizeEstimator.java     |    91 +-
 .../llap/cache/TestLowLevelLrfuCachePolicy.java |    52 +-
 .../hive/llap/daemon/MiniLlapCluster.java       |     2 +-
 .../impl/TestLlapDaemonProtocolServerImpl.java  |     3 +-
 .../src/test/resources/llap-daemon-site.xml     |     6 +
 .../upgrade/derby/022-HIVE-11107.derby.sql      |     2 +
 .../upgrade/derby/hive-schema-2.1.0.derby.sql   |     4 +-
 .../hive/metastore/HMSMetricsListener.java      |   113 +
 .../hadoop/hive/metastore/HiveMetaStore.java    |    51 +
 .../hadoop/hive/metastore/ObjectStore.java      |    38 +-
 .../apache/hadoop/hive/metastore/RawStore.java  |    19 +
 .../hive/metastore/hbase/HBaseReadWrite.java    |    20 +
 .../hadoop/hive/metastore/hbase/HBaseStore.java |    30 +
 .../hadoop/hive/metastore/txn/TxnHandler.java   |    89 +-
 .../DummyRawStoreControlledCommit.java          |    15 +
 .../DummyRawStoreForJdoConnection.java          |    15 +
 .../TestHiveMetaStorePartitionSpecs.java        |     2 +-
 orc/pom.xml                                     |   136 +
 .../protobuf-java/org/apache/orc/OrcProto.java  | 19279 +++++++++++++++++
 .../org/apache/orc/BinaryColumnStatistics.java  |    27 +
 orc/src/java/org/apache/orc/BloomFilterIO.java  |    43 +
 .../org/apache/orc/BooleanColumnStatistics.java |    29 +
 .../java/org/apache/orc/ColumnStatistics.java   |    36 +
 .../java/org/apache/orc/CompressionCodec.java   |    69 +
 .../java/org/apache/orc/CompressionKind.java    |    27 +
 orc/src/java/org/apache/orc/DataReader.java     |    58 +
 .../org/apache/orc/DateColumnStatistics.java    |    39 +
 .../org/apache/orc/DecimalColumnStatistics.java |    46 +
 .../org/apache/orc/DoubleColumnStatistics.java  |    46 +
 orc/src/java/org/apache/orc/FileMetaInfo.java   |    64 +
 orc/src/java/org/apache/orc/FileMetadata.java   |    64 +
 .../org/apache/orc/IntegerColumnStatistics.java |    52 +
 orc/src/java/org/apache/orc/OrcConf.java        |   191 +
 orc/src/java/org/apache/orc/OrcFile.java        |   536 +
 orc/src/java/org/apache/orc/OrcUtils.java       |   452 +
 orc/src/java/org/apache/orc/Reader.java         |   363 +
 orc/src/java/org/apache/orc/RecordReader.java   |    66 +
 .../org/apache/orc/StringColumnStatistics.java  |    43 +
 .../java/org/apache/orc/StripeInformation.java  |    59 +
 .../java/org/apache/orc/StripeStatistics.java   |    44 +
 .../apache/orc/TimestampColumnStatistics.java   |    38 +
 .../java/org/apache/orc/TypeDescription.java    |   544 +
 orc/src/java/org/apache/orc/Writer.java         |   114 +
 .../org/apache/orc/impl/BitFieldReader.java     |   216 +
 .../org/apache/orc/impl/BitFieldWriter.java     |    73 +
 .../java/org/apache/orc/impl/BufferChunk.java   |    85 +
 .../apache/orc/impl/ColumnStatisticsImpl.java   |  1097 +
 .../orc/impl/DirectDecompressionCodec.java      |    28 +
 .../org/apache/orc/impl/DynamicByteArray.java   |   303 +
 .../org/apache/orc/impl/DynamicIntArray.java    |   142 +
 .../java/org/apache/orc/impl/HadoopShims.java   |    64 +
 .../org/apache/orc/impl/HadoopShimsCurrent.java |    62 +
 .../org/apache/orc/impl/HadoopShims_2_2.java    |    36 +
 orc/src/java/org/apache/orc/impl/InStream.java  |   496 +
 .../java/org/apache/orc/impl/IntegerReader.java |    67 +
 .../java/org/apache/orc/impl/IntegerWriter.java |    47 +
 .../java/org/apache/orc/impl/MemoryManager.java |   214 +
 .../org/apache/orc/impl/MetadataReader.java     |    34 +
 .../org/apache/orc/impl/MetadataReaderImpl.java |   125 +
 orc/src/java/org/apache/orc/impl/OrcIndex.java  |    43 +
 orc/src/java/org/apache/orc/impl/OutStream.java |   289 +
 .../org/apache/orc/impl/PositionProvider.java   |    26 +
 .../org/apache/orc/impl/PositionRecorder.java   |    25 +
 .../apache/orc/impl/PositionedOutputStream.java |    39 +
 .../java/org/apache/orc/impl/RedBlackTree.java  |   311 +
 .../apache/orc/impl/RunLengthByteReader.java    |   150 +
 .../apache/orc/impl/RunLengthByteWriter.java    |   106 +
 .../apache/orc/impl/RunLengthIntegerReader.java |   157 +
 .../orc/impl/RunLengthIntegerReaderV2.java      |   390 +
 .../apache/orc/impl/RunLengthIntegerWriter.java |   143 +
 .../orc/impl/RunLengthIntegerWriterV2.java      |   831 +
 .../org/apache/orc/impl/SerializationUtils.java |  1297 ++
 .../orc/impl/SettableUncompressedStream.java    |    44 +
 .../java/org/apache/orc/impl/SnappyCodec.java   |   108 +
 .../java/org/apache/orc/impl/StreamName.java    |    97 +
 .../org/apache/orc/impl/StringRedBlackTree.java |   210 +
 .../java/org/apache/orc/impl/WriterImpl.java    |  2912 +++
 orc/src/java/org/apache/orc/impl/ZlibCodec.java |   169 +
 orc/src/protobuf/orc_proto.proto                |   220 +
 .../org/apache/orc/impl/TestBitFieldReader.java |   145 +
 .../test/org/apache/orc/impl/TestBitPack.java   |   279 +
 .../org/apache/orc/impl/TestDynamicArray.java   |    90 +
 .../test/org/apache/orc/impl/TestInStream.java  |   314 +
 .../orc/impl/TestIntegerCompressionReader.java  |   130 +
 .../org/apache/orc/impl/TestMemoryManager.java  |   133 +
 .../orc/impl/TestRunLengthByteReader.java       |   143 +
 .../orc/impl/TestRunLengthIntegerReader.java    |   125 +
 .../apache/orc/impl/TestSerializationUtils.java |   164 +
 .../apache/orc/impl/TestStringRedBlackTree.java |   234 +
 orc/src/test/org/apache/orc/impl/TestZlib.java  |    56 +
 pom.xml                                         |     1 +
 ql/pom.xml                                      |    61 +-
 .../apache/hadoop/hive/ql/io/orc/OrcProto.java  | 19272 ----------------
 .../java/org/apache/hadoop/hive/ql/Driver.java  |   206 +-
 .../org/apache/hadoop/hive/ql/ErrorMsg.java     |     1 +
 .../org/apache/hadoop/hive/ql/exec/DDLTask.java |    33 +-
 .../hive/ql/exec/GlobalWorkMapFactory.java      |     4 +-
 .../hadoop/hive/ql/exec/LimitOperator.java      |     6 +-
 .../hadoop/hive/ql/exec/MapJoinOperator.java    |    25 +-
 .../hadoop/hive/ql/exec/ObjectCacheFactory.java |     6 +-
 .../apache/hadoop/hive/ql/exec/Operator.java    |     2 +-
 .../hive/ql/exec/OrcFileMergeOperator.java      |     4 +-
 .../apache/hadoop/hive/ql/exec/PTFUtils.java    |   180 -
 .../hadoop/hive/ql/exec/ReduceSinkOperator.java |     4 -
 .../hive/ql/exec/SerializationUtilities.java    |   488 +
 .../org/apache/hadoop/hive/ql/exec/Task.java    |     4 -
 .../hadoop/hive/ql/exec/UDFClassLoader.java     |    70 +
 .../apache/hadoop/hive/ql/exec/Utilities.java   |   745 +-
 .../hadoop/hive/ql/exec/mr/ExecDriver.java      |     5 +-
 .../hadoop/hive/ql/exec/mr/MapRedTask.java      |     3 +-
 .../hadoop/hive/ql/exec/mr/MapredLocalTask.java |     3 +-
 .../persistence/HybridHashTableContainer.java   |    29 +-
 .../ql/exec/persistence/ObjectContainer.java    |    40 +-
 .../hive/ql/exec/spark/KryoSerializer.java      |    28 +-
 .../ql/exec/spark/RemoteHiveSparkClient.java    |     1 -
 .../hive/ql/exec/spark/SparkUtilities.java      |     6 +-
 .../hive/ql/exec/tez/MapRecordProcessor.java    |     4 +-
 .../hive/ql/exec/tez/ReduceRecordProcessor.java |     4 +-
 .../hive/ql/exec/tez/TezSessionState.java       |    38 +-
 .../ql/exec/vector/VectorLimitOperator.java     |    26 +-
 .../ql/exec/vector/VectorizedBatchUtil.java     |    13 +-
 .../ql/exec/vector/udf/VectorUDFArgDesc.java    |    12 +
 .../org/apache/hadoop/hive/ql/io/HdfsUtils.java |    21 +-
 .../hadoop/hive/ql/io/HiveInputFormat.java      |    11 +-
 .../hive/ql/io/filters/BloomFilterIO.java       |    44 -
 .../hive/ql/io/orc/BinaryColumnStatistics.java  |    25 -
 .../hadoop/hive/ql/io/orc/BitFieldReader.java   |   212 -
 .../hadoop/hive/ql/io/orc/BitFieldWriter.java   |    69 -
 .../hive/ql/io/orc/BooleanColumnStatistics.java |    27 -
 .../hadoop/hive/ql/io/orc/ColumnStatistics.java |    36 -
 .../hive/ql/io/orc/ColumnStatisticsImpl.java    |  1082 -
 .../hadoop/hive/ql/io/orc/CompressionCodec.java |    69 -
 .../hadoop/hive/ql/io/orc/CompressionKind.java  |    18 +-
 .../hadoop/hive/ql/io/orc/DataReader.java       |    58 -
 .../hive/ql/io/orc/DateColumnStatistics.java    |    37 -
 .../hive/ql/io/orc/DecimalColumnStatistics.java |    45 -
 .../ql/io/orc/DirectDecompressionCodec.java     |    26 -
 .../hive/ql/io/orc/DoubleColumnStatistics.java  |    44 -
 .../hadoop/hive/ql/io/orc/DynamicByteArray.java |   303 -
 .../hadoop/hive/ql/io/orc/DynamicIntArray.java  |   142 -
 .../apache/hadoop/hive/ql/io/orc/FileDump.java  |    22 +-
 .../hadoop/hive/ql/io/orc/FileMetaInfo.java     |    64 -
 .../hadoop/hive/ql/io/orc/FileMetadata.java     |    63 -
 .../apache/hadoop/hive/ql/io/orc/InStream.java  |   501 -
 .../hive/ql/io/orc/IntegerColumnStatistics.java |    50 -
 .../hadoop/hive/ql/io/orc/IntegerReader.java    |    67 -
 .../hadoop/hive/ql/io/orc/IntegerWriter.java    |    47 -
 .../hadoop/hive/ql/io/orc/JsonFileDump.java     |    18 +-
 .../hadoop/hive/ql/io/orc/MemoryManager.java    |   213 -
 .../hadoop/hive/ql/io/orc/MetadataReader.java   |    34 -
 .../hive/ql/io/orc/MetadataReaderImpl.java      |   123 -
 .../apache/hadoop/hive/ql/io/orc/OrcConf.java   |   191 -
 .../apache/hadoop/hive/ql/io/orc/OrcFile.java   |   372 +-
 .../hive/ql/io/orc/OrcFileKeyWrapper.java       |     2 +
 .../io/orc/OrcFileStripeMergeRecordReader.java  |     4 +-
 .../hive/ql/io/orc/OrcFileValueWrapper.java     |     2 +
 .../hadoop/hive/ql/io/orc/OrcInputFormat.java   |   193 +-
 .../hive/ql/io/orc/OrcNewInputFormat.java       |     1 +
 .../hadoop/hive/ql/io/orc/OrcNewSplit.java      |     1 +
 .../hadoop/hive/ql/io/orc/OrcOutputFormat.java  |     5 +-
 .../hive/ql/io/orc/OrcRawRecordMerger.java      |     7 +-
 .../apache/hadoop/hive/ql/io/orc/OrcSerde.java  |     1 +
 .../apache/hadoop/hive/ql/io/orc/OrcSplit.java  |     2 +-
 .../apache/hadoop/hive/ql/io/orc/OrcStruct.java |     1 +
 .../apache/hadoop/hive/ql/io/orc/OrcUnion.java  |     1 +
 .../apache/hadoop/hive/ql/io/orc/OrcUtils.java  |   629 -
 .../apache/hadoop/hive/ql/io/orc/OutStream.java |   286 -
 .../hadoop/hive/ql/io/orc/PositionProvider.java |    26 -
 .../hadoop/hive/ql/io/orc/PositionRecorder.java |    25 -
 .../hive/ql/io/orc/PositionedOutputStream.java  |    38 -
 .../apache/hadoop/hive/ql/io/orc/Reader.java    |   319 +-
 .../hadoop/hive/ql/io/orc/ReaderImpl.java       |    69 +-
 .../hadoop/hive/ql/io/orc/RecordReader.java     |    38 +-
 .../hadoop/hive/ql/io/orc/RecordReaderImpl.java |   120 +-
 .../hive/ql/io/orc/RecordReaderUtils.java       |    12 +-
 .../hadoop/hive/ql/io/orc/RedBlackTree.java     |   309 -
 .../hive/ql/io/orc/RunLengthByteReader.java     |   150 -
 .../hive/ql/io/orc/RunLengthByteWriter.java     |   106 -
 .../hive/ql/io/orc/RunLengthIntegerReader.java  |   157 -
 .../ql/io/orc/RunLengthIntegerReaderV2.java     |   392 -
 .../hive/ql/io/orc/RunLengthIntegerWriter.java  |   143 -
 .../ql/io/orc/RunLengthIntegerWriterV2.java     |   831 -
 .../hadoop/hive/ql/io/orc/SchemaEvolution.java  |    12 +-
 .../hive/ql/io/orc/SerializationUtils.java      |  1291 --
 .../ql/io/orc/SettableUncompressedStream.java   |    44 -
 .../hadoop/hive/ql/io/orc/SnappyCodec.java      |   109 -
 .../hadoop/hive/ql/io/orc/StreamName.java       |    95 -
 .../hive/ql/io/orc/StringColumnStatistics.java  |    41 -
 .../hive/ql/io/orc/StringRedBlackTree.java      |   207 -
 .../hive/ql/io/orc/StripeInformation.java       |    59 -
 .../hadoop/hive/ql/io/orc/StripeStatistics.java |    42 -
 .../ql/io/orc/TimestampColumnStatistics.java    |    38 -
 .../hive/ql/io/orc/TreeReaderFactory.java       |    14 +-
 .../hadoop/hive/ql/io/orc/TypeDescription.java  |   540 -
 .../ql/io/orc/VectorizedOrcInputFormat.java     |     4 +-
 .../apache/hadoop/hive/ql/io/orc/Writer.java    |    90 +-
 .../hadoop/hive/ql/io/orc/WriterImpl.java       |  3377 +--
 .../apache/hadoop/hive/ql/io/orc/ZlibCodec.java |   171 -
 .../hive/ql/io/orc/encoded/EncodedReader.java   |     9 +-
 .../ql/io/orc/encoded/EncodedReaderImpl.java    |    89 +-
 .../orc/encoded/EncodedTreeReaderFactory.java   |   260 +-
 .../hadoop/hive/ql/io/orc/encoded/Reader.java   |     8 +-
 .../hive/ql/io/orc/encoded/ReaderImpl.java      |     5 +-
 .../hive/ql/io/orc/encoded/StreamUtils.java     |    11 +-
 .../hive/ql/io/parquet/ProjectionPusher.java    |     3 +-
 .../io/parquet/convert/HiveStructConverter.java |     6 +-
 .../hive/ql/io/sarg/ConvertAstToSearchArg.java  |    64 +-
 .../hadoop/hive/ql/lockmgr/DbLockManager.java   |    47 +-
 .../apache/hadoop/hive/ql/metadata/Hive.java    |    63 +-
 .../ql/optimizer/AbstractBucketJoinProc.java    |     4 +-
 .../hive/ql/optimizer/AbstractSMBJoinProc.java  |     6 +-
 .../ql/optimizer/BucketMapJoinOptimizer.java    |     3 +-
 .../BucketingSortingReduceSinkOptimizer.java    |     2 +-
 .../hadoop/hive/ql/optimizer/ColumnPruner.java  |     2 +-
 .../hive/ql/optimizer/ConstantPropagate.java    |     2 +-
 .../DynamicPartitionPruningOptimization.java    |    73 +-
 .../optimizer/FixedBucketPruningOptimizer.java  |     2 +-
 .../hive/ql/optimizer/GenMRFileSink1.java       |     6 +-
 .../hive/ql/optimizer/GenMRProcContext.java     |    20 +-
 .../hive/ql/optimizer/GenMRTableScan1.java      |     7 +-
 .../hadoop/hive/ql/optimizer/GenMRUnion1.java   |     5 +-
 .../hive/ql/optimizer/GenMapRedUtils.java       |    43 +-
 .../hive/ql/optimizer/GlobalLimitOptimizer.java |    32 +-
 .../hive/ql/optimizer/GroupByOptimizer.java     |     2 +-
 .../ql/optimizer/IdentityProjectRemover.java    |     2 +-
 .../hadoop/hive/ql/optimizer/JoinReorder.java   |     2 +-
 .../ql/optimizer/LimitPushdownOptimizer.java    |     7 +-
 .../hive/ql/optimizer/MapJoinFactory.java       |    10 +-
 .../hive/ql/optimizer/MapJoinProcessor.java     |     2 +-
 .../ql/optimizer/NonBlockingOpDeDupProc.java    |     2 +-
 .../hadoop/hive/ql/optimizer/Optimizer.java     |     4 +-
 .../ql/optimizer/PartitionColumnsSeparator.java |     2 +-
 .../hive/ql/optimizer/PointLookupOptimizer.java |     2 +-
 .../hadoop/hive/ql/optimizer/SamplePruner.java  |     2 +-
 .../ql/optimizer/SimpleFetchAggregation.java    |     2 +-
 .../hive/ql/optimizer/SimpleFetchOptimizer.java |    32 +-
 .../hive/ql/optimizer/SkewJoinOptimizer.java    |     8 +-
 .../optimizer/SortedDynPartitionOptimizer.java  |     2 +-
 .../SortedMergeBucketMapJoinOptimizer.java      |     2 +-
 .../hive/ql/optimizer/StatsOptimizer.java       |     2 +-
 .../hadoop/hive/ql/optimizer/Transform.java     |    20 +-
 .../ql/optimizer/calcite/HiveCalciteUtil.java   |    98 +
 .../calcite/HiveDefaultRelMetadataProvider.java |     2 +
 .../ql/optimizer/calcite/HiveRelFactories.java  |   206 +
 .../ql/optimizer/calcite/RelOptHiveTable.java   |     9 +-
 .../hive/ql/optimizer/calcite/TraitsUtil.java   |     4 +
 .../calcite/reloperators/HiveAggregate.java     |    20 -
 .../calcite/reloperators/HiveFilter.java        |    16 -
 .../calcite/reloperators/HiveJoin.java          |    31 +-
 .../calcite/reloperators/HiveProject.java       |    41 +-
 .../calcite/reloperators/HiveSemiJoin.java      |    18 -
 .../calcite/reloperators/HiveSortLimit.java     |    21 +-
 .../calcite/reloperators/HiveTableScan.java     |    46 +-
 .../calcite/reloperators/HiveUnion.java         |    14 -
 .../rules/HiveAggregateJoinTransposeRule.java   |    23 +-
 .../rules/HiveAggregateProjectMergeRule.java    |     3 +-
 .../rules/HiveExpandDistinctAggregatesRule.java |    18 +-
 .../rules/HiveFilterAggregateTransposeRule.java |    45 +
 .../calcite/rules/HiveFilterJoinRule.java       |    14 +-
 .../rules/HiveFilterProjectTSTransposeRule.java |   113 +
 .../calcite/rules/HiveJoinAddNotNullRule.java   |     3 +-
 .../rules/HiveJoinProjectTransposeRule.java     |    36 +-
 .../HiveJoinPushTransitivePredicatesRule.java   |    44 +-
 .../calcite/rules/HiveJoinToMultiJoinRule.java  |     8 +-
 .../calcite/rules/HivePartitionPruneRule.java   |     2 +-
 .../calcite/rules/HivePreFilteringRule.java     |   174 +-
 .../calcite/rules/HiveProjectMergeRule.java     |     4 +-
 .../calcite/rules/HiveRelFieldTrimmer.java      |    17 +-
 .../calcite/rules/HiveSortJoinReduceRule.java   |     5 +-
 .../calcite/rules/HiveWindowingFixRule.java     |     4 +-
 .../stats/FilterSelectivityEstimator.java       |    48 +
 .../calcite/stats/HiveRelMdPredicates.java      |   645 +
 .../calcite/translator/ASTBuilder.java          |     5 +-
 .../calcite/translator/ASTConverter.java        |    11 +-
 .../calcite/translator/HiveOpConverter.java     |    14 +-
 .../translator/HiveOpConverterPostProc.java     |     8 +-
 .../translator/SqlFunctionConverter.java        |     3 +-
 .../correlation/CorrelationOptimizer.java       |     2 +-
 .../correlation/ReduceSinkDeDuplication.java    |     2 +-
 .../ql/optimizer/index/RewriteGBUsingIndex.java |    24 +-
 .../RewriteQueryUsingAggregateIndexCtx.java     |    13 +-
 .../ql/optimizer/lineage/ExprProcFactory.java   |    35 +-
 .../hive/ql/optimizer/lineage/Generator.java    |     2 +-
 .../ListBucketingPruner.java                    |     2 +-
 .../annotation/AnnotateWithOpTraits.java        |     2 +-
 .../pcr/PartitionConditionRemover.java          |     2 +-
 .../ql/optimizer/pcr/PcrExprProcFactory.java    |    31 +-
 .../physical/CommonJoinTaskDispatcher.java      |     3 +-
 .../physical/GenMRSkewJoinProcessor.java        |    17 +-
 .../physical/GenSparkSkewJoinProcessor.java     |    21 +-
 .../ql/optimizer/physical/SerializeFilter.java  |    24 +-
 .../physical/SortMergeJoinTaskDispatcher.java   |     5 +-
 .../ppr/PartitionExpressionForMetastore.java    |    12 +-
 .../hive/ql/optimizer/ppr/PartitionPruner.java  |     2 +-
 .../spark/SparkSortMergeJoinFactory.java        |     6 -
 .../optimizer/spark/SplitSparkWorkResolver.java |     4 +-
 .../annotation/AnnotateWithStatistics.java      |     2 +-
 .../stats/annotation/StatsRulesProcFactory.java |    62 +-
 .../ql/optimizer/unionproc/UnionProcessor.java  |     2 +-
 .../hadoop/hive/ql/parse/CalcitePlanner.java    |   216 +-
 .../hive/ql/parse/ColumnAccessAnalyzer.java     |    36 +-
 .../hadoop/hive/ql/parse/GenTezUtils.java       |    20 +-
 .../hadoop/hive/ql/parse/GlobalLimitCtx.java    |    10 +-
 .../org/apache/hadoop/hive/ql/parse/HiveLexer.g |     1 +
 .../apache/hadoop/hive/ql/parse/HiveParser.g    |     5 +-
 .../hadoop/hive/ql/parse/IdentifiersParser.g    |     2 +-
 .../hadoop/hive/ql/parse/MapReduceCompiler.java |     3 +-
 .../hadoop/hive/ql/parse/ParseContext.java      |     9 +-
 .../hadoop/hive/ql/parse/QBParseInfo.java       |    20 +-
 .../hadoop/hive/ql/parse/SemanticAnalyzer.java  |    64 +-
 .../hadoop/hive/ql/parse/TezCompiler.java       |     8 +-
 .../ql/parse/UpdateDeleteSemanticAnalyzer.java  |    21 +-
 .../ql/parse/spark/GenSparkProcContext.java     |     5 +-
 .../hive/ql/parse/spark/GenSparkUtils.java      |    18 +-
 .../hive/ql/parse/spark/SparkCompiler.java      |     5 +-
 .../hive/ql/parse/spark/SplitOpTreeForDPP.java  |     6 +-
 .../hive/ql/plan/AbstractOperatorDesc.java      |     4 -
 .../hadoop/hive/ql/plan/AggregationDesc.java    |     4 -
 .../hadoop/hive/ql/plan/ExprNodeDescUtils.java  |     8 +
 .../apache/hadoop/hive/ql/plan/LimitDesc.java   |    19 +
 .../hadoop/hive/ql/plan/LoadFileDesc.java       |     3 -
 .../hadoop/hive/ql/plan/LoadMultiFilesDesc.java |     3 -
 .../org/apache/hadoop/hive/ql/plan/MapWork.java |     2 +-
 .../org/apache/hadoop/hive/ql/plan/PTFDesc.java |    22 +-
 .../apache/hadoop/hive/ql/plan/PlanUtils.java   |     9 +-
 .../hadoop/hive/ql/plan/TableScanDesc.java      |     4 -
 .../hive/ql/plan/ptf/PTFExpressionDef.java      |     4 -
 .../hadoop/hive/ql/plan/ptf/ShapeDetails.java   |     4 -
 .../hadoop/hive/ql/ppd/PredicatePushDown.java   |     2 +-
 .../ql/ppd/PredicateTransitivePropagate.java    |     2 +-
 .../hive/ql/ppd/SyntheticJoinPredicate.java     |     2 +-
 .../authorization/AuthorizationUtils.java       |    50 +-
 .../DefaultHiveAuthorizationTranslator.java     |    81 +
 .../plugin/HiveAuthorizationTranslator.java     |    46 +
 .../authorization/plugin/HiveAuthorizer.java    |    26 +-
 .../plugin/HiveAuthorizerImpl.java              |    26 +-
 .../authorization/plugin/HiveV1Authorizer.java  |    18 +-
 .../hadoop/hive/ql/session/SessionState.java    |     9 +-
 .../apache/hadoop/hive/ql/stats/StatsUtils.java |    20 +-
 .../hive/ql/stats/fs/FSStatsAggregator.java     |    14 +-
 .../hive/ql/stats/fs/FSStatsPublisher.java      |    14 +-
 .../ql/udf/generic/GenericUDAFFirstValue.java   |    12 +-
 .../ql/udf/generic/GenericUDAFLastValue.java    |     9 +-
 .../hive/ql/udf/generic/GenericUDAFMax.java     |    14 +-
 .../generic/GenericUDAFStreamingEvaluator.java  |    28 +-
 .../hive/ql/udf/generic/GenericUDFLeadLag.java  |     5 -
 .../hive/ql/udf/ptf/TableFunctionEvaluator.java |     4 -
 .../hive/ql/udf/ptf/WindowingTableFunction.java |    18 +-
 .../hadoop/hive/ql/util/JavaDataModel.java      |   335 -
 .../hadoop/hive/ql/io/orc/orc_proto.proto       |   220 -
 .../hive/metastore/TestMetastoreExpr.java       |    10 +-
 .../apache/hadoop/hive/ql/exec/TestPlan.java    |     8 +-
 .../hadoop/hive/ql/exec/TestUtilities.java      |    20 +-
 .../ql/exec/vector/util/OrcFileGenerator.java   |     2 +-
 .../hive/ql/io/orc/TestBitFieldReader.java      |   145 -
 .../hadoop/hive/ql/io/orc/TestBitPack.java      |   316 -
 .../hive/ql/io/orc/TestColumnStatistics.java    |    11 +-
 .../hadoop/hive/ql/io/orc/TestDynamicArray.java |    87 -
 .../hadoop/hive/ql/io/orc/TestFileDump.java     |    25 +-
 .../hadoop/hive/ql/io/orc/TestInStream.java     |   313 -
 .../hive/ql/io/orc/TestInputOutputFormat.java   |    14 +-
 .../ql/io/orc/TestIntegerCompressionReader.java |   129 -
 .../hadoop/hive/ql/io/orc/TestJsonFileDump.java |     1 +
 .../hive/ql/io/orc/TestMemoryManager.java       |   132 -
 .../hive/ql/io/orc/TestNewIntegerEncoding.java  |    12 +-
 .../hadoop/hive/ql/io/orc/TestOrcFile.java      |    72 +-
 .../hive/ql/io/orc/TestOrcNullOptimization.java |     7 +
 .../hive/ql/io/orc/TestOrcRawRecordMerger.java  |    21 +-
 .../hive/ql/io/orc/TestOrcSerDeStats.java       |     7 +
 .../hive/ql/io/orc/TestOrcSplitElimination.java |    40 +-
 .../hive/ql/io/orc/TestRecordReaderImpl.java    |     7 +-
 .../hive/ql/io/orc/TestRunLengthByteReader.java |   142 -
 .../ql/io/orc/TestRunLengthIntegerReader.java   |   124 -
 .../hive/ql/io/orc/TestSerializationUtils.java  |   164 -
 .../hadoop/hive/ql/io/orc/TestStreamName.java   |     2 +
 .../hive/ql/io/orc/TestStringDictionary.java    |     7 +-
 .../hive/ql/io/orc/TestStringRedBlackTree.java  |   288 -
 .../hive/ql/io/orc/TestTypeDescription.java     |     1 +
 .../hive/ql/io/orc/TestUnrolledBitPack.java     |     1 +
 .../hive/ql/io/orc/TestVectorOrcFile.java       |    38 +-
 .../hive/ql/io/orc/TestVectorizedORCReader.java |     1 -
 .../apache/hadoop/hive/ql/io/orc/TestZlib.java  |    55 -
 .../io/parquet/TestParquetRowGroupFilter.java   |    27 +-
 .../ql/io/sarg/TestConvertAstToSearchArg.java   |    35 +-
 .../hive/ql/lockmgr/TestDbTxnManager.java       |    41 +-
 .../zookeeper/TestZookeeperLockManager.java     |    29 +-
 .../hadoop/hive/ql/parse/TestGenTezWork.java    |    19 +-
 .../queries/clientnegative/invalid_select_fn.q  |     1 +
 .../clientpositive/cast_qualified_types.q       |     2 -
 .../test/queries/clientpositive/decimal_stats.q |    16 +
 .../clientpositive/index_auto_mult_tables.q     |    12 +-
 .../index_auto_mult_tables_compact.q            |    12 +-
 .../queries/clientpositive/index_auto_update.q  |     2 +
 .../test/queries/clientpositive/index_in_db.q   |     3 +
 .../test/queries/clientpositive/index_stale.q   |     1 +
 .../clientpositive/index_stale_partitioned.q    |     1 +
 .../clientpositive/limit_join_transpose.q       |    17 +
 .../test/queries/clientpositive/offset_limit.q  |    25 +
 .../offset_limit_global_optimizer.q             |    45 +
 .../clientpositive/offset_limit_ppd_optimizer.q |    80 +
 .../queries/clientpositive/orc_ppd_exception.q  |    14 +
 .../clientpositive/parquet_type_promotion.q     |     5 +
 .../test/queries/clientpositive/perf/query12.q  |     1 +
 .../test/queries/clientpositive/perf/query13.q  |    54 +
 .../test/queries/clientpositive/perf/query15.q  |     1 +
 .../test/queries/clientpositive/perf/query17.q  |     1 +
 .../test/queries/clientpositive/perf/query18.q  |     1 +
 .../test/queries/clientpositive/perf/query19.q  |     1 +
 .../test/queries/clientpositive/perf/query20.q  |     1 +
 .../test/queries/clientpositive/perf/query21.q  |    26 +
 .../test/queries/clientpositive/perf/query22.q  |     1 +
 .../test/queries/clientpositive/perf/query25.q  |     1 +
 .../test/queries/clientpositive/perf/query26.q  |     1 +
 .../test/queries/clientpositive/perf/query27.q  |     1 +
 .../test/queries/clientpositive/perf/query28.q  |    52 +
 .../test/queries/clientpositive/perf/query29.q  |     1 +
 .../test/queries/clientpositive/perf/query3.q   |     1 +
 .../test/queries/clientpositive/perf/query31.q  |     2 +
 .../test/queries/clientpositive/perf/query32.q  |    19 +
 .../test/queries/clientpositive/perf/query34.q  |     2 +
 .../test/queries/clientpositive/perf/query39.q  |     2 +
 .../test/queries/clientpositive/perf/query40.q  |     1 +
 .../test/queries/clientpositive/perf/query42.q  |     1 +
 .../test/queries/clientpositive/perf/query43.q  |     1 +
 .../test/queries/clientpositive/perf/query45.q  |     1 +
 .../test/queries/clientpositive/perf/query46.q  |     1 +
 .../test/queries/clientpositive/perf/query48.q  |     2 +
 .../test/queries/clientpositive/perf/query50.q  |    58 +
 .../test/queries/clientpositive/perf/query51.q  |    42 +
 .../test/queries/clientpositive/perf/query52.q  |     1 +
 .../test/queries/clientpositive/perf/query54.q  |     1 +
 .../test/queries/clientpositive/perf/query55.q  |     1 +
 .../test/queries/clientpositive/perf/query58.q  |    47 +
 .../test/queries/clientpositive/perf/query64.q  |     2 +
 .../test/queries/clientpositive/perf/query65.q  |    38 +
 .../test/queries/clientpositive/perf/query66.q  |   219 +
 .../test/queries/clientpositive/perf/query67.q  |    44 +
 .../test/queries/clientpositive/perf/query68.q  |     1 +
 .../test/queries/clientpositive/perf/query7.q   |     1 +
 .../test/queries/clientpositive/perf/query70.q  |     1 +
 .../test/queries/clientpositive/perf/query71.q  |     2 +
 .../test/queries/clientpositive/perf/query72.q  |     1 +
 .../test/queries/clientpositive/perf/query73.q  |     2 +
 .../test/queries/clientpositive/perf/query75.q  |     1 +
 .../test/queries/clientpositive/perf/query76.q  |     1 +
 .../test/queries/clientpositive/perf/query79.q  |     1 +
 .../test/queries/clientpositive/perf/query80.q  |     1 +
 .../test/queries/clientpositive/perf/query82.q  |     1 +
 .../test/queries/clientpositive/perf/query84.q  |     1 +
 .../test/queries/clientpositive/perf/query85.q  |     1 +
 .../test/queries/clientpositive/perf/query87.q  |     1 +
 .../test/queries/clientpositive/perf/query88.q  |    92 +
 .../test/queries/clientpositive/perf/query89.q  |    27 +
 .../test/queries/clientpositive/perf/query90.q  |     2 +
 .../test/queries/clientpositive/perf/query91.q  |     2 +
 .../test/queries/clientpositive/perf/query92.q  |     1 +
 .../test/queries/clientpositive/perf/query93.q  |     1 +
 .../test/queries/clientpositive/perf/query94.q  |     1 +
 .../test/queries/clientpositive/perf/query95.q  |     1 +
 .../test/queries/clientpositive/perf/query96.q  |     1 +
 .../test/queries/clientpositive/perf/query97.q  |     1 +
 .../test/queries/clientpositive/perf/query98.q  |     2 +
 ql/src/test/queries/clientpositive/semijoin3.q  |    28 +
 .../special_character_in_tabnames_1.q           |    26 +-
 .../queries/clientpositive/udf_classloader.q    |    16 +
 ..._classloader_dynamic_dependency_resolution.q |    16 +
 ..._after_multiple_inserts_special_characters.q |    25 +
 .../clientpositive/vector_when_case_null.q      |    14 +
 .../clientpositive/vectorization_offset_limit.q |    10 +
 .../clientpositive/windowing_windowspec4.q      |    19 +
 .../resources/orc-file-dump-bloomfilter.out     |     2 +-
 .../resources/orc-file-dump-bloomfilter2.out    |     2 +-
 .../orc-file-dump-dictionary-threshold.out      |     2 +-
 ql/src/test/resources/orc-file-dump.json        |     2 +-
 ql/src/test/resources/orc-file-dump.out         |     2 +-
 ql/src/test/resources/orc-file-has-null.out     |     2 +-
 .../bucket_mapjoin_mismatch1.q.out              |    28 +-
 .../clientnegative/invalid_select_fn.q.out      |     1 +
 .../sortmerge_mapjoin_mismatch_1.q.out          |    10 +-
 .../results/clientnegative/udf_invalid.q.out    |     2 +-
 .../clientpositive/allcolref_in_udf.q.out       |    14 +-
 .../results/clientpositive/ambiguous_col.q.out  |    54 +-
 .../clientpositive/annotate_stats_join.q.out    |     8 +-
 .../annotate_stats_join_pkfk.q.out              |    61 +-
 .../archive_excludeHadoop20.q.out               |     1 -
 .../results/clientpositive/archive_multi.q.out  |     1 -
 .../results/clientpositive/auto_join1.q.out     |    14 +-
 .../results/clientpositive/auto_join10.q.out    |    12 +-
 .../results/clientpositive/auto_join12.q.out    |    66 +-
 .../results/clientpositive/auto_join13.q.out    |    10 +-
 .../results/clientpositive/auto_join15.q.out    |    12 +-
 .../results/clientpositive/auto_join16.q.out    |    18 +-
 .../results/clientpositive/auto_join17.q.out    |    14 +-
 .../results/clientpositive/auto_join19.q.out    |    14 +-
 .../results/clientpositive/auto_join2.q.out     |    24 +-
 .../results/clientpositive/auto_join22.q.out    |    18 +-
 .../results/clientpositive/auto_join24.q.out    |    10 +-
 .../results/clientpositive/auto_join26.q.out    |    20 +-
 .../results/clientpositive/auto_join3.q.out     |    18 +-
 .../results/clientpositive/auto_join30.q.out    |    64 +-
 .../results/clientpositive/auto_join33.q.out    |    16 +-
 .../results/clientpositive/auto_join4.q.out     |     4 +-
 .../results/clientpositive/auto_join5.q.out     |     4 +-
 .../results/clientpositive/auto_join8.q.out     |    18 +-
 .../results/clientpositive/auto_join9.q.out     |    14 +-
 .../auto_join_reordering_values.q.out           |    10 +-
 .../clientpositive/auto_join_stats.q.out        |   106 +-
 .../clientpositive/auto_join_stats2.q.out       |    46 +-
 .../auto_join_without_localtask.q.out           |   148 +-
 .../clientpositive/auto_smb_mapjoin_14.q.out    |    72 +-
 .../clientpositive/auto_sortmerge_join_1.q.out  |    20 +-
 .../clientpositive/auto_sortmerge_join_11.q.out |    22 +-
 .../clientpositive/auto_sortmerge_join_12.q.out |    12 +-
 .../clientpositive/auto_sortmerge_join_13.q.out |     6 +-
 .../clientpositive/auto_sortmerge_join_2.q.out  |    24 +-
 .../clientpositive/auto_sortmerge_join_3.q.out  |    28 +-
 .../clientpositive/auto_sortmerge_join_4.q.out  |    28 +-
 .../clientpositive/auto_sortmerge_join_5.q.out  |    28 +-
 .../clientpositive/auto_sortmerge_join_6.q.out  |   128 +-
 .../clientpositive/auto_sortmerge_join_7.q.out  |    28 +-
 .../clientpositive/auto_sortmerge_join_8.q.out  |    28 +-
 .../clientpositive/auto_sortmerge_join_9.q.out  |   204 +-
 .../clientpositive/bucket_map_join_spark1.q.out |    28 +-
 .../clientpositive/bucket_map_join_spark2.q.out |    28 +-
 .../clientpositive/bucket_map_join_spark3.q.out |    28 +-
 .../clientpositive/bucket_map_join_spark4.q.out |    40 +-
 .../clientpositive/bucketcontext_1.q.out        |     8 +-
 .../clientpositive/bucketcontext_2.q.out        |     8 +-
 .../clientpositive/bucketcontext_3.q.out        |     8 +-
 .../clientpositive/bucketcontext_4.q.out        |     8 +-
 .../clientpositive/bucketcontext_5.q.out        |     8 +-
 .../clientpositive/bucketcontext_6.q.out        |     8 +-
 .../clientpositive/bucketcontext_7.q.out        |     8 +-
 .../clientpositive/bucketcontext_8.q.out        |     8 +-
 .../bucketizedhiveinputformat.q.out             |     2 -
 .../results/clientpositive/bucketmapjoin1.q.out |    20 +-
 .../clientpositive/bucketmapjoin10.q.out        |     6 +-
 .../clientpositive/bucketmapjoin11.q.out        |    12 +-
 .../clientpositive/bucketmapjoin12.q.out        |    12 +-
 .../clientpositive/bucketmapjoin13.q.out        |    24 +-
 .../results/clientpositive/bucketmapjoin2.q.out |    30 +-
 .../results/clientpositive/bucketmapjoin3.q.out |    20 +-
 .../results/clientpositive/bucketmapjoin4.q.out |    20 +-
 .../results/clientpositive/bucketmapjoin5.q.out |    20 +-
 .../results/clientpositive/bucketmapjoin7.q.out |    12 +-
 .../results/clientpositive/bucketmapjoin8.q.out |    12 +-
 .../results/clientpositive/bucketmapjoin9.q.out |    12 +-
 .../clientpositive/bucketmapjoin_negative.q.out |    10 +-
 .../bucketmapjoin_negative2.q.out               |    10 +-
 .../bucketmapjoin_negative3.q.out               |    90 +-
 .../bucketsortoptimize_insert_2.q.out           |    56 +-
 .../bucketsortoptimize_insert_4.q.out           |    30 +-
 .../bucketsortoptimize_insert_5.q.out           |    40 +-
 .../bucketsortoptimize_insert_6.q.out           |   114 +-
 .../bucketsortoptimize_insert_7.q.out           |    12 +-
 .../bucketsortoptimize_insert_8.q.out           |     8 +-
 .../clientpositive/cbo_rp_auto_join1.q.out      |   396 +-
 .../clientpositive/cbo_rp_auto_join17.q.out     |    14 +-
 .../cbo_rp_cross_product_check_2.q.out          |    56 +-
 .../clientpositive/cbo_rp_lineage2.q.out        |     8 +-
 .../results/clientpositive/cbo_udf_max.q.out    |     4 +-
 .../clientpositive/column_access_stats.q.out    |    52 +-
 .../clientpositive/constprog_partitioner.q.out  |    44 +-
 .../clientpositive/correlationoptimizer1.q.out  |   190 +-
 .../clientpositive/correlationoptimizer10.q.out |   176 +-
 .../clientpositive/correlationoptimizer11.q.out |    72 +-
 .../clientpositive/correlationoptimizer12.q.out |    16 +-
 .../clientpositive/correlationoptimizer13.q.out |    42 +-
 .../clientpositive/correlationoptimizer14.q.out |   234 +-
 .../clientpositive/correlationoptimizer15.q.out |    60 +-
 .../clientpositive/correlationoptimizer2.q.out  |   104 +-
 .../clientpositive/correlationoptimizer3.q.out  |   220 +-
 .../clientpositive/correlationoptimizer4.q.out  |    74 +-
 .../clientpositive/correlationoptimizer5.q.out  |   110 +-
 .../clientpositive/correlationoptimizer6.q.out  |   616 +-
 .../clientpositive/correlationoptimizer7.q.out  |   104 +-
 .../clientpositive/correlationoptimizer8.q.out  |    34 +-
 .../clientpositive/correlationoptimizer9.q.out  |   120 +-
 .../results/clientpositive/cross_join.q.out     |    28 +-
 .../clientpositive/cross_product_check_1.q.out  |    66 +-
 .../clientpositive/cross_product_check_2.q.out  |    54 +-
 .../results/clientpositive/decimal_join2.q.out  |    36 +-
 .../results/clientpositive/decimal_stats.q.out  |   106 +
 .../results/clientpositive/decimal_udf.q.out    |    12 +-
 .../clientpositive/dynamic_rdd_cache.q.out      |    34 +-
 .../encryption_join_unencrypted_tbl.q.out       |    20 +-
 ...on_join_with_different_encryption_keys.q.out |    16 +-
 .../clientpositive/explain_logical.q.out        |   198 +-
 .../clientpositive/filter_cond_pushdown.q.out   |   241 +-
 .../clientpositive/filter_join_breaktask.q.out  |    32 +-
 .../clientpositive/groupby_join_pushdown.q.out  |   320 +-
 .../groupby_multi_single_reducer3.q.out         |    16 +-
 .../clientpositive/groupby_position.q.out       |    30 +-
 .../clientpositive/groupby_sort_1_23.q.out      |    46 +-
 .../clientpositive/groupby_sort_skew_1_23.q.out |    50 +-
 .../test/results/clientpositive/having2.q.out   |    66 +-
 .../identity_project_remove_skip.q.out          |    10 +-
 .../clientpositive/index_auto_mult_tables.q.out |   170 +-
 .../index_auto_mult_tables_compact.q.out        |   148 +-
 .../clientpositive/index_auto_self_join.q.out   |    58 +-
 .../clientpositive/index_auto_update.q.out      |     6 +
 .../results/clientpositive/index_bitmap3.q.out  |    30 +-
 .../clientpositive/index_bitmap_auto.q.out      |    30 +-
 .../index_bitmap_auto_partitioned.q.out         |     6 +-
 .../index_bitmap_compression.q.out              |     6 +-
 .../results/clientpositive/index_in_db.q.out    |    12 +
 .../results/clientpositive/index_stale.q.out    |     6 +
 .../index_stale_partitioned.q.out               |     6 +
 .../infer_bucket_sort_map_operators.q.out       |    22 +-
 .../test/results/clientpositive/innerjoin.q.out |    18 +-
 .../test/results/clientpositive/input39.q.out   |    10 +-
 .../results/clientpositive/input_part9.q.out    |     4 +-
 .../clientpositive/input_testxpath2.q.out       |     6 +-
 .../clientpositive/input_testxpath4.q.out       |    12 +-
 ql/src/test/results/clientpositive/join1.q.out  |    18 +-
 ql/src/test/results/clientpositive/join10.q.out |    18 +-
 ql/src/test/results/clientpositive/join12.q.out |    65 +-
 ql/src/test/results/clientpositive/join13.q.out |    16 +-
 ql/src/test/results/clientpositive/join15.q.out |    18 +-
 ql/src/test/results/clientpositive/join16.q.out |    20 +-
 ql/src/test/results/clientpositive/join17.q.out |    18 +-
 ql/src/test/results/clientpositive/join2.q.out  |    32 +-
 ql/src/test/results/clientpositive/join22.q.out |    28 +-
 ql/src/test/results/clientpositive/join25.q.out |    10 +-
 ql/src/test/results/clientpositive/join26.q.out |    12 +-
 ql/src/test/results/clientpositive/join27.q.out |    10 +-
 ql/src/test/results/clientpositive/join28.q.out |    22 +-
 ql/src/test/results/clientpositive/join29.q.out |    42 +-
 ql/src/test/results/clientpositive/join3.q.out  |    24 +-
 ql/src/test/results/clientpositive/join30.q.out |    16 +-
 ql/src/test/results/clientpositive/join31.q.out |    40 +-
 ql/src/test/results/clientpositive/join32.q.out |    22 +-
 .../clientpositive/join32_lessSize.q.out        |   124 +-
 ql/src/test/results/clientpositive/join33.q.out |    22 +-
 ql/src/test/results/clientpositive/join34.q.out |     4 +-
 ql/src/test/results/clientpositive/join35.q.out |     4 +-
 ql/src/test/results/clientpositive/join36.q.out |    10 +-
 ql/src/test/results/clientpositive/join37.q.out |    10 +-
 ql/src/test/results/clientpositive/join40.q.out |    32 +-
 ql/src/test/results/clientpositive/join42.q.out |    77 +-
 ql/src/test/results/clientpositive/join43.q.out |    66 +-
 ql/src/test/results/clientpositive/join8.q.out  |    16 +-
 ql/src/test/results/clientpositive/join9.q.out  |    18 +-
 .../clientpositive/join_alt_syntax.q.out        |   144 +-
 .../clientpositive/join_cond_pushdown_1.q.out   |    86 +-
 .../clientpositive/join_cond_pushdown_2.q.out   |    74 +-
 .../clientpositive/join_cond_pushdown_3.q.out   |    86 +-
 .../clientpositive/join_cond_pushdown_4.q.out   |    74 +-
 .../join_cond_pushdown_unqual1.q.out            |    24 +-
 .../join_cond_pushdown_unqual2.q.out            |    44 +-
 .../join_cond_pushdown_unqual3.q.out            |    24 +-
 .../join_cond_pushdown_unqual4.q.out            |    44 +-
 .../clientpositive/join_grp_diff_keys.q.out     |     8 +-
 .../results/clientpositive/join_map_ppr.q.out   |    24 +-
 .../join_merge_multi_expressions.q.out          |    20 +-
 .../results/clientpositive/join_nullsafe.q.out  |    36 +-
 .../clientpositive/join_on_varchar.q.out        |    14 +-
 .../results/clientpositive/join_parse.q.out     |   130 +-
 .../test/results/clientpositive/join_rc.q.out   |    18 +-
 .../results/clientpositive/join_reorder.q.out   |    24 +-
 .../test/results/clientpositive/join_star.q.out |    54 +-
 .../results/clientpositive/join_thrift.q.out    |    14 +-
 .../test/results/clientpositive/join_vc.q.out   |    30 +-
 .../clientpositive/lateral_view_cp.q.out        |    24 +-
 .../clientpositive/limit_join_transpose.q.out   |    48 +
 .../results/clientpositive/limit_pushdown.q.out |    14 +-
 .../limit_pushdown_negative.q.out               |    14 +-
 .../test/results/clientpositive/lineage2.q.out  |    18 +-
 .../test/results/clientpositive/lineage3.q.out  |    20 +-
 .../list_bucket_query_oneskew_2.q.out           |     2 +-
 .../llap/bucket_map_join_tez1.q.out             |   341 +-
 .../llap/bucket_map_join_tez2.q.out             |   135 +-
 .../llap/dynamic_partition_pruning.q.out        |   259 +-
 .../llap/dynamic_partition_pruning_2.q.out      |    21 +-
 .../llap/hybridgrace_hashjoin_1.q.out           |    97 +-
 .../llap/hybridgrace_hashjoin_2.q.out           |   128 +-
 .../clientpositive/llap/lvj_mapjoin.q.out       |    56 +-
 .../clientpositive/llap/mapjoin_decimal.q.out   |    18 +-
 .../results/clientpositive/llap/mergejoin.q.out |  1614 +-
 .../test/results/clientpositive/llap/mrr.q.out  |   130 +-
 .../llap/tez_bmj_schema_evolution.q.out         |    18 +-
 .../llap/tez_dynpart_hashjoin_1.q.out           |   120 +-
 .../llap/tez_dynpart_hashjoin_2.q.out           |   118 +-
 .../clientpositive/llap/tez_join_hash.q.out     |   145 +-
 .../llap/tez_join_result_complex.q.out          |    64 +-
 .../clientpositive/llap/tez_self_join.q.out     |    28 +-
 .../results/clientpositive/llap/tez_smb_1.q.out |    64 +-
 .../clientpositive/llap/tez_smb_main.q.out      |   207 +-
 .../results/clientpositive/llap/tez_union.q.out |   172 +-
 .../llap/tez_vector_dynpart_hashjoin_1.q.out    |   120 +-
 .../llap/tez_vector_dynpart_hashjoin_2.q.out    |   122 +-
 .../vectorized_dynamic_partition_pruning.q.out  |   259 +-
 .../llap/vectorized_nested_mapjoin.q.out        |    66 +-
 .../clientpositive/llap_uncompressed.q.out      |     6 +-
 .../clientpositive/louter_join_ppr.q.out        |    28 +-
 .../clientpositive/mapjoin_distinct.q.out       |    60 +-
 .../clientpositive/mapjoin_mapjoin.q.out        |    60 +-
 .../clientpositive/mapjoin_memcheck.q.out       |    12 +-
 .../clientpositive/mapjoin_subquery.q.out       |    44 +-
 .../test/results/clientpositive/mergejoin.q.out |   210 +-
 .../results/clientpositive/mergejoins.q.out     |    38 +-
 .../clientpositive/mergejoins_mixed.q.out       |   266 +-
 .../results/clientpositive/metadataonly1.q.out  |     8 +-
 .../results/clientpositive/multiMapJoin1.q.out  |   384 +-
 .../results/clientpositive/multiMapJoin2.q.out  |   324 +-
 .../clientpositive/multi_join_union.q.out       |    26 +-
 .../results/clientpositive/nonmr_fetch.q.out    |    16 +-
 .../results/clientpositive/offset_limit.q.out   |   257 +
 .../offset_limit_global_optimizer.q.out         |  3390 +++
 .../offset_limit_ppd_optimizer.q.out            |  1377 ++
 .../results/clientpositive/orc_file_dump.q.out  |     6 +-
 .../test/results/clientpositive/orc_llap.q.out  |    52 +-
 .../results/clientpositive/orc_merge10.q.out    |     4 +-
 .../results/clientpositive/orc_merge11.q.out    |     6 +-
 .../clientpositive/orc_ppd_exception.q.out      |    49 +
 .../clientpositive/orc_predicate_pushdown.q.out |    32 +-
 .../results/clientpositive/parallel_join1.q.out |    18 +-
 .../results/clientpositive/parquet_join.q.out   |    36 +-
 .../parquet_predicate_pushdown.q.out            |    32 +-
 .../clientpositive/parquet_type_promotion.q.out |    27 +-
 ql/src/test/results/clientpositive/pcr.q.out    |    40 +-
 .../results/clientpositive/perf/query12.q.out   |   129 +
 .../results/clientpositive/perf/query13.q.out   |   300 +
 .../results/clientpositive/perf/query15.q.out   |   153 +
 .../results/clientpositive/perf/query17.q.out   |   264 +
 .../results/clientpositive/perf/query18.q.out   |   236 +
 .../results/clientpositive/perf/query19.q.out   |   207 +
 .../results/clientpositive/perf/query20.q.out   |   138 +
 .../results/clientpositive/perf/query21.q.out   |   201 +
 .../results/clientpositive/perf/query22.q.out   |   148 +
 .../results/clientpositive/perf/query25.q.out   |   264 +
 .../results/clientpositive/perf/query26.q.out   |   174 +
 .../results/clientpositive/perf/query27.q.out   |   178 +
 .../results/clientpositive/perf/query28.q.out   |   357 +
 .../results/clientpositive/perf/query29.q.out   |   264 +
 .../results/clientpositive/perf/query3.q.out    |   119 +
 .../results/clientpositive/perf/query31.q.out   |   641 +
 .../results/clientpositive/perf/query32.q.out   |   205 +
 .../results/clientpositive/perf/query34.q.out   |   177 +
 .../results/clientpositive/perf/query39.q.out   |   313 +
 .../results/clientpositive/perf/query40.q.out   |   177 +
 .../results/clientpositive/perf/query42.q.out   |   117 +
 .../results/clientpositive/perf/query43.q.out   |   118 +
 .../results/clientpositive/perf/query45.q.out   |   210 +
 .../results/clientpositive/perf/query46.q.out   |   241 +
 .../results/clientpositive/perf/query48.q.out   |   160 +
 .../results/clientpositive/perf/query50.q.out   |   287 +
 .../results/clientpositive/perf/query51.q.out   |   283 +
 .../results/clientpositive/perf/query52.q.out   |   118 +
 .../results/clientpositive/perf/query54.q.out   |   314 +
 .../results/clientpositive/perf/query55.q.out   |   118 +
 .../results/clientpositive/perf/query58.q.out   |   602 +
 .../results/clientpositive/perf/query64.q.out   |  1192 +
 .../results/clientpositive/perf/query65.q.out   |   315 +
 .../results/clientpositive/perf/query66.q.out   |   796 +
 .../results/clientpositive/perf/query67.q.out   |   249 +
 .../results/clientpositive/perf/query68.q.out   |   241 +
 .../results/clientpositive/perf/query7.q.out    |   174 +
 .../results/clientpositive/perf/query70.q.out   |   268 +
 .../results/clientpositive/perf/query71.q.out   |   242 +
 .../results/clientpositive/perf/query72.q.out   |   352 +
 .../results/clientpositive/perf/query73.q.out   |   177 +
 .../results/clientpositive/perf/query75.q.out   |   719 +
 .../results/clientpositive/perf/query76.q.out   |   284 +
 .../results/clientpositive/perf/query79.q.out   |   181 +
 .../results/clientpositive/perf/query80.q.out   |   602 +
 .../results/clientpositive/perf/query82.q.out   |   127 +
 .../results/clientpositive/perf/query84.q.out   |   171 +
 .../results/clientpositive/perf/query85.q.out   |   275 +
 .../results/clientpositive/perf/query87.q.out   |   334 +
 .../results/clientpositive/perf/query88.q.out   |  1157 +
 .../results/clientpositive/perf/query89.q.out   |   224 +
 .../results/clientpositive/perf/query90.q.out   |   260 +
 .../results/clientpositive/perf/query91.q.out   |   232 +
 .../results/clientpositive/perf/query92.q.out   |   160 +
 .../results/clientpositive/perf/query93.q.out   |   117 +
 .../results/clientpositive/perf/query94.q.out   |   228 +
 .../results/clientpositive/perf/query95.q.out   |   275 +
 .../results/clientpositive/perf/query96.q.out   |   135 +
 .../results/clientpositive/perf/query97.q.out   |   163 +
 .../results/clientpositive/perf/query98.q.out   |   135 +
 .../results/clientpositive/pointlookup2.q.out   |    40 +-
 .../results/clientpositive/pointlookup3.q.out   |    40 +-
 .../test/results/clientpositive/ppd_gby.q.out   |    49 +-
 .../test/results/clientpositive/ppd_gby2.q.out  |    55 +-
 .../results/clientpositive/ppd_gby_join.q.out   |    96 +-
 .../test/results/clientpositive/ppd_join.q.out  |    86 +-
 .../test/results/clientpositive/ppd_join2.q.out |   133 +-
 .../test/results/clientpositive/ppd_join3.q.out |   155 +-
 .../test/results/clientpositive/ppd_join5.q.out |    10 +-
 .../clientpositive/ppd_join_filter.q.out        |   130 +-
 .../clientpositive/ppd_multi_insert.q.out       |    68 +-
 .../clientpositive/ppd_outer_join2.q.out        |    66 +-
 .../clientpositive/ppd_outer_join3.q.out        |    66 +-
 .../clientpositive/ppd_outer_join4.q.out        |   223 +-
 .../clientpositive/ppd_outer_join5.q.out        |   231 +-
 .../results/clientpositive/ppd_random.q.out     |    16 +-
 .../clientpositive/ppd_repeated_alias.q.out     |     2 +-
 .../results/clientpositive/ppd_udf_case.q.out   |    59 +-
 .../results/clientpositive/ppd_udf_col.q.out    |   178 +-
 .../test/results/clientpositive/ppd_union.q.out |    42 +-
 .../results/clientpositive/ppd_union_view.q.out |    34 +-
 ql/src/test/results/clientpositive/ppd_vc.q.out |    30 +-
 ql/src/test/results/clientpositive/ptf.q.out    |    72 +-
 .../results/clientpositive/ptf_streaming.q.out  |    58 +-
 .../results/clientpositive/ptfgroupbyjoin.q.out |    44 +-
 .../results/clientpositive/quotedid_basic.q.out |    12 +-
 .../clientpositive/quotedid_partition.q.out     |     4 +-
 .../reduce_deduplicate_exclude_join.q.out       |    12 +-
 .../reduce_deduplicate_extended.q.out           |    86 +-
 .../test/results/clientpositive/regex_col.q.out |    22 +-
 .../clientpositive/router_join_ppr.q.out        |    30 +-
 .../runtime_skewjoin_mapjoin_spark.q.out        |    58 +-
 .../test/results/clientpositive/sample8.q.out   |    46 +-
 .../clientpositive/select_transform_hint.q.out  |    24 +-
 .../test/results/clientpositive/semijoin.q.out  |   272 +-
 .../test/results/clientpositive/semijoin3.q.out |   156 +
 .../test/results/clientpositive/skewjoin.q.out  |   259 +-
 .../clientpositive/skewjoin_mapjoin10.q.out     |    32 +-
 .../clientpositive/skewjoin_mapjoin6.q.out      |    48 +-
 .../clientpositive/skewjoin_noskew.q.out        |    18 +-
 .../clientpositive/skewjoin_onesideskew.q.out   |    18 +-
 .../results/clientpositive/skewjoinopt10.q.out  |    52 +-
 .../results/clientpositive/skewjoinopt12.q.out  |     8 +-
 .../results/clientpositive/skewjoinopt15.q.out  |    40 +-
 .../results/clientpositive/skewjoinopt16.q.out  |     8 +-
 .../results/clientpositive/skewjoinopt17.q.out  |     8 +-
 .../results/clientpositive/skewjoinopt18.q.out  |    14 +-
 .../results/clientpositive/skewjoinopt2.q.out   |    16 +-
 .../results/clientpositive/smb_mapjoin9.q.out   |     2 +-
 .../results/clientpositive/smb_mapjoin_1.q.out  |     2 +-
 .../results/clientpositive/smb_mapjoin_10.q.out |     2 +-
 .../results/clientpositive/smb_mapjoin_11.q.out |     2 +-
 .../results/clientpositive/smb_mapjoin_12.q.out |     4 +-
 .../results/clientpositive/smb_mapjoin_13.q.out |    14 +-
 .../results/clientpositive/smb_mapjoin_14.q.out |    18 +-
 .../results/clientpositive/smb_mapjoin_15.q.out |    18 +-
 .../results/clientpositive/smb_mapjoin_16.q.out |     2 +-
 .../results/clientpositive/smb_mapjoin_17.q.out |     2 +-
 .../results/clientpositive/smb_mapjoin_2.q.out  |     4 +-
 .../results/clientpositive/smb_mapjoin_25.q.out |   105 +-
 .../results/clientpositive/smb_mapjoin_3.q.out  |     2 +-
 .../results/clientpositive/smb_mapjoin_4.q.out  |     2 +-
 .../results/clientpositive/smb_mapjoin_6.q.out  |     4 +-
 .../clientpositive/sort_merge_join_desc_2.q.out |     2 +-
 .../clientpositive/sort_merge_join_desc_3.q.out |     2 +-
 .../clientpositive/sort_merge_join_desc_4.q.out |     6 +-
 .../clientpositive/sort_merge_join_desc_5.q.out |     2 +-
 .../clientpositive/sort_merge_join_desc_6.q.out |     6 +-
 .../clientpositive/sort_merge_join_desc_7.q.out |     6 +-
 .../clientpositive/sort_merge_join_desc_8.q.out |     6 +-
 .../spark/annotate_stats_join.q.out             |     8 +-
 .../clientpositive/spark/auto_join1.q.out       |    14 +-
 .../clientpositive/spark/auto_join10.q.out      |    12 +-
 .../clientpositive/spark/auto_join12.q.out      |    73 +-
 .../clientpositive/spark/auto_join13.q.out      |    10 +-
 .../clientpositive/spark/auto_join15.q.out      |    12 +-
 .../clientpositive/spark/auto_join16.q.out      |    14 +-
 .../clientpositive/spark/auto_join17.q.out      |    14 +-
 .../clientpositive/spark/auto_join19.q.out      |    14 +-
 .../clientpositive/spark/auto_join2.q.out       |    98 +-
 .../clientpositive/spark/auto_join22.q.out      |    18 +-
 .../clientpositive/spark/auto_join24.q.out      |    10 +-
 .../clientpositive/spark/auto_join26.q.out      |    20 +-
 .../clientpositive/spark/auto_join3.q.out       |    18 +-
 .../clientpositive/spark/auto_join30.q.out      |    38 +-
 .../clientpositive/spark/auto_join8.q.out       |    14 +-
 .../clientpositive/spark/auto_join9.q.out       |    14 +-
 .../spark/auto_join_reordering_values.q.out     |    10 +-
 .../clientpositive/spark/auto_join_stats.q.out  |    58 +-
 .../clientpositive/spark/auto_join_stats2.q.out |    46 +-
 .../spark/auto_join_without_localtask.q.out     |    68 +-
 .../spark/auto_smb_mapjoin_14.q.out             |   126 +-
 .../spark/auto_sortmerge_join_1.q.out           |    18 +-
 .../spark/auto_sortmerge_join_12.q.out          |    12 +-
 .../spark/auto_sortmerge_join_13.q.out          |    44 +-
 .../spark/auto_sortmerge_join_2.q.out           |    16 +-
 .../spark/auto_sortmerge_join_3.q.out           |    22 +-
 .../spark/auto_sortmerge_join_4.q.out           |    22 +-
 .../spark/auto_sortmerge_join_5.q.out           |    22 +-
 .../spark/auto_sortmerge_join_6.q.out           |   144 +-
 .../spark/auto_sortmerge_join_7.q.out           |    22 +-
 .../spark/auto_sortmerge_join_8.q.out           |    22 +-
 .../spark/auto_sortmerge_join_9.q.out           |   220 +-
 .../spark/bucket_map_join_spark1.q.out          |    28 +-
 .../spark/bucket_map_join_spark2.q.out          |    28 +-
 .../spark/bucket_map_join_spark3.q.out          |    28 +-
 .../spark/bucket_map_join_spark4.q.out          |   140 +-
 .../spark/bucket_map_join_tez1.q.out            |   361 +-
 .../spark/bucket_map_join_tez2.q.out            |   185 +-
 .../spark/bucketizedhiveinputformat.q.out       |     2 -
 .../clientpositive/spark/bucketmapjoin1.q.out   |    20 +-
 .../clientpositive/spark/bucketmapjoin10.q.out  |     6 +-
 .../clientpositive/spark/bucketmapjoin11.q.out  |    12 +-
 .../clientpositive/spark/bucketmapjoin12.q.out  |    12 +-
 .../clientpositive/spark/bucketmapjoin13.q.out  |    24 +-
 .../clientpositive/spark/bucketmapjoin2.q.out   |    30 +-
 .../clientpositive/spark/bucketmapjoin3.q.out   |    20 +-
 .../clientpositive/spark/bucketmapjoin4.q.out   |    20 +-
 .../clientpositive/spark/bucketmapjoin5.q.out   |    20 +-
 .../clientpositive/spark/bucketmapjoin7.q.out   |    12 +-
 .../clientpositive/spark/bucketmapjoin8.q.out   |    12 +-
 .../clientpositive/spark/bucketmapjoin9.q.out   |    12 +-
 .../spark/bucketmapjoin_negative.q.out          |    10 +-
 .../spark/bucketmapjoin_negative2.q.out         |    10 +-
 .../spark/bucketmapjoin_negative3.q.out         |    90 +-
 .../spark/bucketsortoptimize_insert_2.q.out     |   108 +-
 .../spark/bucketsortoptimize_insert_4.q.out     |    30 +-
 .../spark/bucketsortoptimize_insert_6.q.out     |   154 +-
 .../spark/bucketsortoptimize_insert_7.q.out     |    54 +-
 .../spark/bucketsortoptimize_insert_8.q.out     |    36 +-
 .../spark/column_access_stats.q.out             |    52 +-
 .../spark/constprog_partitioner.q.out           |    44 +-
 .../clientpositive/spark/cross_join.q.out       |    28 +-
 .../spark/cross_product_check_1.q.out           |    66 +-
 .../spark/cross_product_check_2.q.out           |    48 +-
 .../spark/dynamic_rdd_cache.q.out               |    34 +-
 .../spark/filter_join_breaktask.q.out           |    28 +-
 .../spark/groupby_multi_single_reducer3.q.out   |    16 +-
 .../clientpositive/spark/groupby_position.q.out |    32 +-
 .../spark/groupby_sort_1_23.q.out               |    46 +-
 .../spark/groupby_sort_skew_1_23.q.out          |    50 +-
 .../spark/identity_project_remove_skip.q.out    |     8 +-
 .../spark/index_auto_self_join.q.out            |    42 +-
 .../clientpositive/spark/index_bitmap3.q.out    |    30 +-
 .../spark/index_bitmap_auto.q.out               |    30 +-
 .../spark/infer_bucket_sort_map_operators.q.out |    38 +-
 .../infer_bucket_sort_reducers_power_two.q.out  |     8 +-
 .../clientpositive/spark/innerjoin.q.out        |    18 +-
 .../results/clientpositive/spark/join1.q.out    |    18 +-
 .../results/clientpositive/spark/join10.q.out   |    18 +-
 .../results/clientpositive/spark/join12.q.out   |    51 +-
 .../results/clientpositive/spark/join13.q.out   |    16 +-
 .../results/clientpositive/spark/join15.q.out   |    18 +-
 .../results/clientpositive/spark/join16.q.out   |    20 +-
 .../results/clientpositive/spark/join17.q.out   |    18 +-
 .../results/clientpositive/spark/join2.q.out    |    32 +-
 .../results/clientpositive/spark/join22.q.out   |    22 +-
 .../results/clientpositive/spark/join25.q.out   |    10 +-
 .../results/clientpositive/spark/join26.q.out   |    12 +-
 .../results/clientpositive/spark/join27.q.out   |    10 +-
 .../results/clientpositive/spark/join28.q.out   |    22 +-
 .../results/clientpositive/spark/join29.q.out   |    26 +-
 .../results/clientpositive/spark/join3.q.out    |    24 +-
 .../results/clientpositive/spark/join30.q.out   |    16 +-
 .../results/clientpositive/spark/join31.q.out   |    28 +-
 .../results/clientpositive/spark/join32.q.out   |    22 +-
 .../clientpositive/spark/join32_lessSize.q.out  |   138 +-
 .../results/clientpositive/spark/join33.q.out   |    22 +-
 .../results/clientpositive/spark/join34.q.out   |     6 +-
 .../results/clientpositive/spark/join35.q.out   |     6 +-
 .../results/clientpositive/spark/join36.q.out   |    10 +-
 .../results/clientpositive/spark/join37.q.out   |    10 +-
 .../results/clientpositive/spark/join40.q.out   |    32 +-
 .../results/clientpositive/spark/join8.q.out    |    16 +-
 .../results/clientpositive/spark/join9.q.out    |    18 +-
 .../clientpositive/spark/join_alt_syntax.q.out  |   144 +-
 .../spark/join_cond_pushdown_1.q.out            |    86 +-
 .../spark/join_cond_pushdown_2.q.out            |    74 +-
 .../spark/join_cond_pushdown_3.q.out            |    86 +-
 .../spark/join_cond_pushdown_4.q.out            |    74 +-
 .../spark/join_cond_pushdown_unqual1.q.out      |    24 +-
 .../spark/join_cond_pushdown_unqual2.q.out      |    44 +-
 .../spark/join_cond_pushdown_unqual3.q.out      |    24 +-
 .../spark/join_cond_pushdown_unqual4.q.out      |    44 +-
 .../clientpositive/spark/join_map_ppr.q.out     |    24 +-
 .../spark/join_merge_multi_expressions.q.out    |    20 +-
 .../clientpositive/spark/join_nullsafe.q.out    |    36 +-
 .../results/clientpositive/spark/join_rc.q.out  |    18 +-
 .../clientpositive/spark/join_reorder.q.out     |    24 +-
 .../clientpositive/spark/join_star.q.out        |    54 +-
 .../clientpositive/spark/join_thrift.q.out      |    14 +-
 .../results/clientpositive/spark/join_vc.q.out  |    30 +-
 .../clientpositive/spark/limit_pushdown.q.out   |    14 +-
 .../clientpositive/spark/louter_join_ppr.q.out  |    18 +-
 .../clientpositive/spark/mapjoin_decimal.q.out  |    16 +-
 .../clientpositive/spark/mapjoin_distinct.q.out |    60 +-
 .../clientpositive/spark/mapjoin_mapjoin.q.out  |   158 +-
 .../clientpositive/spark/mapjoin_memcheck.q.out |    12 +-
 .../clientpositive/spark/mapjoin_subquery.q.out |    44 +-
 .../clientpositive/spark/mergejoins.q.out       |    38 +-
 .../clientpositive/spark/mergejoins_mixed.q.out |   266 +-
 .../clientpositive/spark/multi_join_union.q.out |    28 +-
 .../clientpositive/spark/parallel_join1.q.out   |    18 +-
 .../clientpositive/spark/parquet_join.q.out     |    42 +-
 .../test/results/clientpositive/spark/pcr.q.out |    40 +-
 .../clientpositive/spark/ppd_gby_join.q.out     |    96 +-
 .../results/clientpositive/spark/ppd_join.q.out |    86 +-
 .../clientpositive/spark/ppd_join2.q.out        |   133 +-
 .../clientpositive/spark/ppd_join3.q.out        |   153 +-
 .../clientpositive/spark/ppd_join5.q.out        |    10 +-
 .../clientpositive/spark/ppd_join_filter.q.out  |   130 +-
 .../clientpositive/spark/ppd_multi_insert.q.out |    68 +-
 .../clientpositive/spark/ppd_outer_join2.q.out  |    66 +-
 .../clientpositive/spark/ppd_outer_join3.q.out  |    66 +-
 .../clientpositive/spark/ppd_outer_join4.q.out  |   211 +-
 .../clientpositive/spark/ppd_outer_join5.q.out  |   207 +-
 .../test/results/clientpositive/spark/ptf.q.out |    72 +-
 .../clientpositive/spark/ptf_streaming.q.out    |    58 +-
 .../spark/reduce_deduplicate_exclude_join.q.out |    12 +-
 .../clientpositive/spark/router_join_ppr.q.out  |    20 +-
 .../spark/runtime_skewjoin_mapjoin_spark.q.out  |    26 +-
 .../results/clientpositive/spark/sample8.q.out  |    46 +-
 .../results/clientpositive/spark/semijoin.q.out |   272 +-
 .../results/clientpositive/spark/skewjoin.q.out |   283 +-
 .../clientpositive/spark/skewjoin_noskew.q.out  |    18 +-
 .../clientpositive/spark/skewjoinopt10.q.out    |    48 +-
 .../clientpositive/spark/skewjoinopt12.q.out    |     8 +-
 .../clientpositive/spark/skewjoinopt15.q.out    |    32 +-
 .../clientpositive/spark/skewjoinopt16.q.out    |     8 +-
 .../clientpositive/spark/skewjoinopt17.q.out    |     8 +-
 .../clientpositive/spark/skewjoinopt18.q.out    |    14 +-
 .../clientpositive/spark/skewjoinopt2.q.out     |    16 +-
 .../clientpositive/spark/smb_mapjoin_1.q.out    |    14 +-
 .../clientpositive/spark/smb_mapjoin_10.q.out   |     8 +-
 .../clientpositive/spark/smb_mapjoin_11.q.out   |    12 +-
 .../clientpositive/spark/smb_mapjoin_12.q.out   |    24 +-
 .../clientpositive/spark/smb_mapjoin_13.q.out   |    22 +-
 .../clientpositive/spark/smb_mapjoin_14.q.out   |    52 +-
 .../clientpositive/spark/smb_mapjoin_15.q.out   |    42 +-
 .../clientpositive/spark/smb_mapjoin_16.q.out   |     4 +-
 .../clientpositive/spark/smb_mapjoin_17.q.out   |     4 +-
 .../clientpositive/spark/smb_mapjoin_2.q.out    |    16 +-
 .../clientpositive/spark/smb_mapjoin_25.q.out   |    83 +-
 .../clientpositive/spark/smb_mapjoin_3.q.out    |    14 +-
 .../clientpositive/spark/smb_mapjoin_4.q.out    |     8 +-
 .../clientpositive/spark/smb_mapjoin_5.q.out    |     6 +-
 .../clientpositive/spark/smb_mapjoin_6.q.out    |    16 +-
 .../clientpositive/spark/subquery_exists.q.out  |    22 +-
 .../clientpositive/spark/subquery_in.q.out      |   145 +-
 .../spark/subquery_multiinsert.q.java1.7.out    |    14 +-
 .../spark/table_access_keys_stats.q.out         |    37 +-
 .../clientpositive/spark/temp_table_join1.q.out |    54 +-
 .../results/clientpositive/spark/union26.q.out  |    28 +-
 .../results/clientpositive/spark/union32.q.out  |    80 +-
 .../results/clientpositive/spark/union34.q.out  |    44 +-
 .../clientpositive/spark/union_top_level.q.out  |    16 +-
 .../spark/vector_decimal_mapjoin.q.out          |    12 +-
 .../spark/vector_mapjoin_reduce.q.out           |   166 +-
 .../spark/vectorization_short_regress.q.out     |    18 +-
 .../spark/vectorized_mapjoin.q.out              |    12 +-
 .../spark/vectorized_nested_mapjoin.q.out       |    32 +-
 .../clientpositive/spark/vectorized_ptf.q.out   |    72 +-
 .../spark/vectorized_shufflejoin.q.out          |    16 +-
 .../test/results/clientpositive/stats11.q.out   |    20 +-
 .../subq_where_serialization.q.out              |    30 +-
 .../clientpositive/subquery_exists.q.out        |    22 +-
 .../clientpositive/subquery_exists_having.q.out |    44 +-
 .../results/clientpositive/subquery_in.q.out    |   145 +-
 .../clientpositive/subquery_in_having.q.out     |   118 +-
 .../subquery_multiinsert.q.java1.7.out          |    14 +-
 .../results/clientpositive/subquery_notin.q.out |    16 +-
 .../subquery_notin_having.q.java1.7.out         |     6 +-
 .../subquery_unqual_corr_expr.q.out             |    16 +-
 .../subquery_unqualcolumnrefs.q.out             |   142 +-
 .../results/clientpositive/subquery_views.q.out |    26 +-
 .../table_access_keys_stats.q.out               |    37 +-
 .../clientpositive/temp_table_join1.q.out       |    54 +-
 .../results/clientpositive/tez/auto_join1.q.out |    16 +-
 .../clientpositive/tez/auto_join30.q.out        |    50 +-
 .../tez/auto_sortmerge_join_1.q.out             |    18 +-
 .../tez/auto_sortmerge_join_11.q.out            |    26 +-
 .../tez/auto_sortmerge_join_12.q.out            |    12 +-
 .../tez/auto_sortmerge_join_13.q.out            |    54 +-
 .../tez/auto_sortmerge_join_2.q.out             |    28 +-
 .../tez/auto_sortmerge_join_3.q.out             |    42 +-
 .../tez/auto_sortmerge_join_4.q.out             |    42 +-
 .../tez/auto_sortmerge_join_5.q.out             |    34 +-
 .../tez/auto_sortmerge_join_6.q.out             |   192 +-
 .../tez/auto_sortmerge_join_7.q.out             |    42 +-
 .../tez/auto_sortmerge_join_8.q.out             |    42 +-
 .../tez/auto_sortmerge_join_9.q.out             |   268 +-
 .../tez/bucket_map_join_tez1.q.out              |   339 +-
 .../tez/bucket_map_join_tez2.q.out              |   133 +-
 .../tez/correlationoptimizer1.q.out             |   208 +-
 .../results/clientpositive/tez/cross_join.q.out |    30 +-
 .../tez/cross_product_check_1.q.out             |    66 +-
 .../tez/cross_product_check_2.q.out             |    54 +-
 .../tez/dynamic_partition_pruning.q.out         |   226 +-
 .../tez/dynamic_partition_pruning_2.q.out       |    21 +-
 .../clientpositive/tez/explainuser_1.q.out      |  1502 +-
 .../clientpositive/tez/explainuser_2.q.out      |  3195 ++-
 .../clientpositive/tez/explainuser_3.q.out      |    34 +-
 .../tez/filter_join_breaktask.q.out             |    28 +-
 .../tez/hybridgrace_hashjoin_1.q.out            |    97 +-
 .../tez/hybridgrace_hashjoin_2.q.out            |   128 +-
 .../test/results/clientpositive/tez/join1.q.out |    18 +-
 .../clientpositive/tez/join_nullsafe.q.out      |    36 +-
 .../clientpositive/tez/limit_pushdown.q.out     |    14 +-
 .../clientpositive/tez/lvj_mapjoin.q.out        |    56 +-
 .../clientpositive/tez/mapjoin_decimal.q.out    |    18 +-
 .../clientpositive/tez/mapjoin_mapjoin.q.out    |    74 +-
 .../results/clientpositive/tez/mergejoin.q.out  |   202 +-
 .../test/results/clientpositive/tez/mrr.q.out   |   130 +-
 .../clientpositive/tez/orc_merge10.q.out        |     4 +-
 .../clientpositive/tez/orc_merge11.q.out        |     6 +-
 .../test/results/clientpositive/tez/ptf.q.out   |    72 +-
 .../clientpositive/tez/ptf_streaming.q.out      |    58 +-
 .../results/clientpositive/tez/skewjoin.q.out   |   109 +-
 .../clientpositive/tez/subquery_exists.q.out    |    22 +-
 .../clientpositive/tez/subquery_in.q.out        |   145 +-
 .../tez/tez_bmj_schema_evolution.q.out          |    18 +-
 .../tez/tez_dynpart_hashjoin_1.q.out            |   120 +-
 .../tez/tez_dynpart_hashjoin_2.q.out            |   118 +-
 .../clientpositive/tez/tez_join_hash.q.out      |   144 +-
 .../tez/tez_join_result_complex.q.out           |    64 +-
 .../clientpositive/tez/tez_self_join.q.out      |    28 +-
 .../results/clientpositive/tez/tez_smb_1.q.out  |    64 +-
 .../clientpositive/tez/tez_smb_empty.q.out      |   116 +-
 .../clientpositive/tez/tez_smb_main.q.out       |   206 +-
 .../results/clientpositive/tez/tez_union.q.out  |   172 +-
 .../tez/tez_vector_dynpart_hashjoin_1.q.out     |   120 +-
 .../tez/tez_vector_dynpart_hashjoin_2.q.out     |   120 +-
 .../clientpositive/tez/unionDistinct_1.q.out    |   190 +-
 .../tez/vector_auto_smb_mapjoin_14.q.out        |   300 +-
 .../tez/vector_binary_join_groupby.q.out        |    14 +-
 .../tez/vector_char_mapjoin1.q.out              |    56 +-
 .../tez/vector_decimal_expressions.q.out        |     8 +-
 .../tez/vector_decimal_mapjoin.q.out            |    14 +-
 .../clientpositive/tez/vector_decimal_udf.q.out |    18 +-
 .../clientpositive/tez/vector_if_expr.q.out     |    10 +-
 .../tez/vector_interval_mapjoin.q.out           |    24 +-
 .../clientpositive/tez/vector_join30.q.out      |    50 +-
 .../tez/vector_join_part_col_char.q.out         |    22 +-
 .../tez/vector_leftsemi_mapjoin.q.out           |  1500 +-
 .../tez/vector_mapjoin_reduce.q.out             |   133 +-
 .../tez/vector_nullsafe_join.q.out              |    64 +-
 .../tez/vector_reduce_groupby_decimal.q.out     |    12 +-
 .../tez/vector_select_null2.q.out               |    95 +
 .../tez/vector_varchar_mapjoin1.q.out           |    56 +-
 .../tez/vector_when_case_null.q.out             |    97 +
 .../clientpositive/tez/vectorization_8.q.out    |    16 +-
 .../tez/vectorization_limit.q.out               |    22 +-
 .../tez/vectorization_short_regress.q.out       |    18 +-
 .../tez/vectorized_bucketmapjoin1.q.out         |    42 +-
 .../clientpositive/tez/vectorized_context.q.out |    26 +-
 .../vectorized_dynamic_partition_pruning.q.out  |   226 +-
 .../clientpositive/tez/vectorized_mapjoin.q.out |    14 +-
 .../tez/vectorized_nested_mapjoin.q.out         |    66 +-
 .../clientpositive/tez/vectorized_ptf.q.out     |    72 +-
 .../tez/vectorized_shufflejoin.q.out            |    16 +-
 .../udf_case_column_pruning.q.out               |    20 +-
 .../clientpositive/udf_classloader.q.out        |    43 +
 ...ssloader_dynamic_dependency_resolution.q.out |    43 +
 .../clientpositive/udf_isnull_isnotnull.q.out   |     4 +-
 .../test/results/clientpositive/udf_size.q.out  |     4 +-
 .../clientpositive/udtf_json_tuple.q.out        |    26 +-
 .../clientpositive/udtf_parse_url_tuple.q.out   |    22 +-
 .../test/results/clientpositive/union22.q.out   |     6 +-
 .../test/results/clientpositive/union26.q.out   |    34 +-
 .../test/results/clientpositive/union32.q.out   |    96 +-
 .../test/results/clientpositive/union34.q.out   |    56 +-
 .../clientpositive/unionDistinct_1.q.out        |   214 +-
 .../clientpositive/union_top_level.q.out        |    32 +-
 ...er_multiple_inserts_special_characters.q.out |    78 +
 .../vector_auto_smb_mapjoin_14.q.out            |    72 +-
 .../vector_binary_join_groupby.q.out            |    12 +-
 .../clientpositive/vector_char_mapjoin1.q.out   |    50 +-
 .../clientpositive/vector_decimal_cast.q.out    |     4 +-
 .../vector_decimal_expressions.q.out            |     8 +-
 .../clientpositive/vector_decimal_mapjoin.q.out |    12 +-
 .../clientpositive/vector_decimal_udf.q.out     |    18 +-
 .../results/clientpositive/vector_if_expr.q.out |    10 +-
 .../vector_interval_mapjoin.q.out               |    22 +-
 .../results/clientpositive/vector_join30.q.out  |    64 +-
 .../vector_leftsemi_mapjoin.q.out               |  1356 +-
 .../clientpositive/vector_mapjoin_reduce.q.out  |   108 +-
 .../clientpositive/vector_nullsafe_join.q.out   |    48 +-
 .../vector_reduce_groupby_decimal.q.out         |    12 +-
 .../vector_varchar_mapjoin1.q.out               |    50 +-
 .../clientpositive/vector_when_case_null.q.out  |    90 +
 .../clientpositive/vectorization_8.q.out        |    16 +-
 .../vectorization_decimal_date.q.out            |     4 +-
 .../clientpositive/vectorization_limit.q.out    |    22 +-
 .../vectorization_offset_limit.q.out            |   118 +
 .../vectorization_short_regress.q.out           |    18 +-
 .../vectorized_bucketmapjoin1.q.out             |     6 +-
 .../clientpositive/vectorized_context.q.out     |    22 +-
 .../clientpositive/vectorized_mapjoin.q.out     |    12 +-
 .../vectorized_nested_mapjoin.q.out             |    36 +-
 .../results/clientpositive/vectorized_ptf.q.out |    72 +-
 .../clientpositive/vectorized_shufflejoin.q.out |    16 +-
 .../clientpositive/windowing_windowspec4.q.out  |    59 +
 .../compiler/errors/unknown_function1.q.out     |     2 +-
 .../compiler/errors/unknown_function4.q.out     |     2 +-
 ql/src/test/templates/TestCliDriver.vm          |    76 +-
 ql/src/test/templates/TestCompareCliDriver.vm   |    73 +-
 ql/src/test/templates/TestNegativeCliDriver.vm  |    74 +-
 ql/src/test/templates/TestParseNegative.vm      |    69 +-
 ql/src/test/templates/TestPerfCliDriver.vm      |   175 +
 .../hadoop/hive/serde2/AbstractSerDe.java       |     2 +-
 .../hadoop/hive/serde2/io/DateWritable.java     |   179 -
 service/pom.xml                                 |    14 +-
 .../apache/hive/service/server/HiveServer2.java |    15 +
 .../apache/hive/service/cli/CLIServiceTest.java |   127 +-
 .../cli/session/TestSessionManagerMetrics.java  |    23 +-
 .../apache/hadoop/hive/shims/Hadoop23Shims.java |     9 -
 .../apache/hadoop/hive/shims/ZeroCopyShims.java |    42 -
 .../apache/hadoop/hive/shims/HadoopShims.java   |    13 -
 .../hive/thrift/HadoopThriftAuthBridge.java     |     3 -
 .../hadoop/hive/common/DiskRangeInfo.java       |    59 +
 .../hadoop/hive/ql/util/JavaDataModel.java      |   335 +
 .../hadoop/hive/serde2/io/DateWritable.java     |   179 +
 .../apache/hive/common/util/BloomFilter.java    |   309 +
 .../org/apache/hive/common/util/Murmur3.java    |   335 +
 .../apache/hive/common/util/TestMurmur3.java    |   224 +
 .../ptest2/src/main/resources/batch-exec.vm     |     8 +-
 1298 files changed, 92450 insertions(+), 60621 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/hive/blob/27a14d5a/common/src/java/org/apache/hadoop/hive/conf/HiveConf.java
----------------------------------------------------------------------