You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@hive.apache.org by gu...@apache.org on 2014/08/22 23:37:21 UTC

svn commit: r1619936 [15/49] - in /hive/branches/cbo: ./ accumulo-handler/ ant/src/org/apache/hadoop/hive/ant/ bin/ common/src/java/org/apache/hadoop/hive/ant/ common/src/java/org/apache/hadoop/hive/common/type/ common/src/java/org/apache/hadoop/hive/c...

Modified: hive/branches/cbo/ql/src/java/org/apache/hadoop/hive/ql/security/authorization/plugin/HiveAuthorizerFactory.java
URL: http://svn.apache.org/viewvc/hive/branches/cbo/ql/src/java/org/apache/hadoop/hive/ql/security/authorization/plugin/HiveAuthorizerFactory.java?rev=1619936&r1=1619935&r2=1619936&view=diff
==============================================================================
--- hive/branches/cbo/ql/src/java/org/apache/hadoop/hive/ql/security/authorization/plugin/HiveAuthorizerFactory.java (original)
+++ hive/branches/cbo/ql/src/java/org/apache/hadoop/hive/ql/security/authorization/plugin/HiveAuthorizerFactory.java Fri Aug 22 21:36:47 2014
@@ -37,9 +37,11 @@ public interface HiveAuthorizerFactory {
    *  different thread, so get the current instance in each method invocation.
    * @param conf - current HiveConf
    * @param hiveAuthenticator - authenticator, provides user name
+   * @param ctx - session context information
    * @return new instance of HiveAuthorizer
    * @throws HiveAuthzPluginException
    */
   HiveAuthorizer createHiveAuthorizer(HiveMetastoreClientFactory metastoreClientFactory,
-      HiveConf conf, HiveAuthenticationProvider hiveAuthenticator) throws HiveAuthzPluginException;
+      HiveConf conf, HiveAuthenticationProvider hiveAuthenticator, HiveAuthzSessionContext ctx)
+      throws HiveAuthzPluginException;
 }

Modified: hive/branches/cbo/ql/src/java/org/apache/hadoop/hive/ql/security/authorization/plugin/HiveAuthzContext.java
URL: http://svn.apache.org/viewvc/hive/branches/cbo/ql/src/java/org/apache/hadoop/hive/ql/security/authorization/plugin/HiveAuthzContext.java?rev=1619936&r1=1619935&r2=1619936&view=diff
==============================================================================
--- hive/branches/cbo/ql/src/java/org/apache/hadoop/hive/ql/security/authorization/plugin/HiveAuthzContext.java (original)
+++ hive/branches/cbo/ql/src/java/org/apache/hadoop/hive/ql/security/authorization/plugin/HiveAuthzContext.java Fri Aug 22 21:36:47 2014
@@ -29,14 +29,8 @@ import org.apache.hadoop.hive.common.cla
 @Evolving
 public final class HiveAuthzContext {
 
-  public enum CLIENT_TYPE {
-    HIVESERVER2, HIVECLI
-  };
-
   public static class Builder {
     private String userIpAddress;
-    private String sessionString;
-    private CLIENT_TYPE clientType;
     private String commandString;
 
     /**
@@ -50,18 +44,6 @@ public final class HiveAuthzContext {
     public void setUserIpAddress(String userIpAddress) {
       this.userIpAddress = userIpAddress;
     }
-    public String getSessionString() {
-      return sessionString;
-    }
-    public void setSessionString(String sessionString) {
-      this.sessionString = sessionString;
-    }
-    public CLIENT_TYPE getClientType() {
-      return clientType;
-    }
-    public void setClientType(CLIENT_TYPE clientType) {
-      this.clientType = clientType;
-    }
     public String getCommandString() {
       return commandString;
     }
@@ -76,14 +58,10 @@ public final class HiveAuthzContext {
   }
 
   private final String userIpAddress;
-  private final String sessionString;
-  private final CLIENT_TYPE clientType;
   private final String commandString;
 
   private HiveAuthzContext(Builder builder) {
     this.userIpAddress = builder.userIpAddress;
-    this.sessionString = builder.sessionString;
-    this.clientType = builder.clientType;
     this.commandString = builder.commandString;
 
   }
@@ -92,22 +70,14 @@ public final class HiveAuthzContext {
     return userIpAddress;
   }
 
-  public String getSessionString() {
-    return sessionString;
-  }
-
-  public CLIENT_TYPE getClientType() {
-    return clientType;
-  }
-
   public String getCommandString() {
     return commandString;
   }
 
   @Override
   public String toString() {
-    return "HiveAuthzContext [userIpAddress=" + userIpAddress + ", sessionString=" + sessionString
-        + ", clientType=" + clientType + ", commandString=" + commandString + "]";
+    return "HiveAuthzContext [userIpAddress=" + userIpAddress + ", commandString=" + commandString
+        + "]";
   }
 
 }

Modified: hive/branches/cbo/ql/src/java/org/apache/hadoop/hive/ql/security/authorization/plugin/HiveOperationType.java
URL: http://svn.apache.org/viewvc/hive/branches/cbo/ql/src/java/org/apache/hadoop/hive/ql/security/authorization/plugin/HiveOperationType.java?rev=1619936&r1=1619935&r2=1619936&view=diff
==============================================================================
--- hive/branches/cbo/ql/src/java/org/apache/hadoop/hive/ql/security/authorization/plugin/HiveOperationType.java (original)
+++ hive/branches/cbo/ql/src/java/org/apache/hadoop/hive/ql/security/authorization/plugin/HiveOperationType.java Fri Aug 22 21:36:47 2014
@@ -59,6 +59,8 @@ public enum HiveOperationType {
   ANALYZE_TABLE,
   ALTERTABLE_BUCKETNUM,
   ALTERPARTITION_BUCKETNUM,
+  ALTERTABLE_UPDATETABLESTATS,
+  ALTERTABLE_UPDATEPARTSTATS,
   SHOWDATABASES,
   SHOWTABLES,
   SHOWCOLUMNS,

Modified: hive/branches/cbo/ql/src/java/org/apache/hadoop/hive/ql/security/authorization/plugin/sqlstd/Operation2Privilege.java
URL: http://svn.apache.org/viewvc/hive/branches/cbo/ql/src/java/org/apache/hadoop/hive/ql/security/authorization/plugin/sqlstd/Operation2Privilege.java?rev=1619936&r1=1619935&r2=1619936&view=diff
==============================================================================
--- hive/branches/cbo/ql/src/java/org/apache/hadoop/hive/ql/security/authorization/plugin/sqlstd/Operation2Privilege.java (original)
+++ hive/branches/cbo/ql/src/java/org/apache/hadoop/hive/ql/security/authorization/plugin/sqlstd/Operation2Privilege.java Fri Aug 22 21:36:47 2014
@@ -27,6 +27,7 @@ import java.util.Set;
 import org.apache.hadoop.hive.ql.security.authorization.plugin.HiveOperationType;
 import org.apache.hadoop.hive.ql.security.authorization.plugin.HivePrivilegeObject;
 import org.apache.hadoop.hive.ql.security.authorization.plugin.HivePrivilegeObject.HivePrivObjectActionType;
+import org.apache.hadoop.hive.ql.security.authorization.plugin.HivePrivilegeObject.HivePrivilegeObjectType;
 
 /**
  * Mapping of operation to its required input and output privileges
@@ -43,6 +44,7 @@ public class Operation2Privilege {
     // The following fields specify the criteria on objects for this priv to be required
     private final IOType ioType;
     private final HivePrivObjectActionType actionType;
+    private final HivePrivilegeObjectType objectType;
 
 
     private PrivRequirement(SQLPrivTypeGrant[] privs, IOType ioType) {
@@ -51,11 +53,22 @@ public class Operation2Privilege {
 
     private PrivRequirement(SQLPrivTypeGrant[] privs, IOType ioType,
         HivePrivObjectActionType actionType) {
+      this(privs, ioType, actionType, null);
+    }
+
+    private PrivRequirement(SQLPrivTypeGrant[] privs, HivePrivilegeObjectType objectType) {
+      this(privs, null, null, objectType);
+    }
+
+    private PrivRequirement(SQLPrivTypeGrant[] privs, IOType ioType,
+        HivePrivObjectActionType actionType, HivePrivilegeObjectType objectType) {
       this.reqPrivs = privs;
       this.ioType = ioType;
       this.actionType = actionType;
+      this.objectType = objectType;
     }
 
+
     /**
      * Utility function that takes a input and output privilege objects
      * @param inGrant
@@ -70,6 +83,15 @@ public class Operation2Privilege {
       return privReqs;
     }
 
+    /**
+     * Utility function that converts PrivRequirement array into list
+     * @param privs
+     * @return
+     */
+    static List<PrivRequirement> newPrivRequirementList(PrivRequirement... privs) {
+      return new ArrayList<PrivRequirement>(Arrays.asList(privs));
+    }
+
     private SQLPrivTypeGrant[] getReqPrivs() {
       return reqPrivs;
     }
@@ -82,6 +104,10 @@ public class Operation2Privilege {
       return actionType;
     }
 
+    public HivePrivilegeObjectType getObjectType() {
+      return objectType;
+    }
+
   }
 
   private static Map<HiveOperationType, List<PrivRequirement>> op2Priv;
@@ -107,9 +133,9 @@ public class Operation2Privilege {
 (SEL_NOGRANT_AR,
         SEL_NOGRANT_AR)); //??
 
-    op2Priv.put(HiveOperationType.CREATEDATABASE,
-        PrivRequirement.newIOPrivRequirement
-(ADMIN_PRIV_AR, OWNER_INS_SEL_DEL_NOGRANT_AR));
+    op2Priv.put(HiveOperationType.CREATEDATABASE, PrivRequirement.newPrivRequirementList(
+        new PrivRequirement(OWNER_INS_SEL_DEL_NOGRANT_AR, HivePrivilegeObjectType.DFS_URI),
+        new PrivRequirement(OWNER_INS_SEL_DEL_NOGRANT_AR, HivePrivilegeObjectType.LOCAL_URI)));
 
     op2Priv.put(HiveOperationType.DROPDATABASE, PrivRequirement.newIOPrivRequirement
 (null, OWNER_PRIV_AR));
@@ -150,6 +176,10 @@ public class Operation2Privilege {
 (OWNER_PRIV_AR, OWNER_PRIV_AR));
     op2Priv.put(HiveOperationType.ALTERTABLE_RENAME, PrivRequirement.newIOPrivRequirement
 (OWNER_PRIV_AR, OWNER_PRIV_AR));
+    op2Priv.put(HiveOperationType.ALTERTABLE_UPDATETABLESTATS, PrivRequirement.newIOPrivRequirement
+(OWNER_PRIV_AR, OWNER_PRIV_AR));
+    op2Priv.put(HiveOperationType.ALTERTABLE_UPDATEPARTSTATS, PrivRequirement.newIOPrivRequirement
+(OWNER_PRIV_AR, OWNER_PRIV_AR));
     op2Priv.put(HiveOperationType.ALTERTABLE_TOUCH, PrivRequirement.newIOPrivRequirement
 (OWNER_PRIV_AR, OWNER_PRIV_AR));
     op2Priv.put(HiveOperationType.ALTERTABLE_ARCHIVE, PrivRequirement.newIOPrivRequirement
@@ -300,9 +330,9 @@ public class Operation2Privilege {
 (null, null));
 
     // require db ownership, if there is a file require SELECT , INSERT, and DELETE
-    op2Priv.put(HiveOperationType.CREATETABLE,
-        PrivRequirement.newIOPrivRequirement
-(OWNER_INS_SEL_DEL_NOGRANT_AR, OWNER_PRIV_AR));
+    op2Priv.put(HiveOperationType.CREATETABLE, PrivRequirement.newPrivRequirementList(
+        new PrivRequirement(OWNER_INS_SEL_DEL_NOGRANT_AR, IOType.INPUT),
+        new PrivRequirement(OWNER_PRIV_AR, HivePrivilegeObjectType.DATABASE)));
 
     op2Priv.put(HiveOperationType.ALTERDATABASE, PrivRequirement.newIOPrivRequirement
 (null, ADMIN_PRIV_AR));
@@ -388,20 +418,17 @@ public class Operation2Privilege {
     List<PrivRequirement> opPrivs = op2Priv.get(hiveOpType);
     RequiredPrivileges reqPrivs = new RequiredPrivileges();
 
-    // Find the PrivRequirements that match on IOType and ActionType, and add
-    // the privilege
-    // required to reqPrivs
+    // Find the PrivRequirements that match on IOType, ActionType, and HivePrivilegeObjectType add
+    // the privilege required to reqPrivs
     for (PrivRequirement opPriv : opPrivs) {
-      if (opPriv.getIOType() != ioType) {
+      if (opPriv.getIOType() != null && opPriv.getIOType() != ioType) {
+        continue;
+      }
+      if (opPriv.getActionType() != null && opPriv.getActionType() != hObj.getActionType()) {
         continue;
       }
-      if (opPriv.getActionType() != null) {
-        // if action in PrivRequirement is null, it means that
-        // the privileges are required irrespective of hObj's action type
-        // If it is not null, action type has to match
-        if (hObj.getActionType() != opPriv.getActionType()) {
-          continue;
-        }
+      if (opPriv.getObjectType() != null && opPriv.getObjectType() != hObj.getType()) {
+        continue;
       }
       reqPrivs.addAll(opPriv.getReqPrivs());
     }

Modified: hive/branches/cbo/ql/src/java/org/apache/hadoop/hive/ql/security/authorization/plugin/sqlstd/SQLStdHiveAccessController.java
URL: http://svn.apache.org/viewvc/hive/branches/cbo/ql/src/java/org/apache/hadoop/hive/ql/security/authorization/plugin/sqlstd/SQLStdHiveAccessController.java?rev=1619936&r1=1619935&r2=1619936&view=diff
==============================================================================
--- hive/branches/cbo/ql/src/java/org/apache/hadoop/hive/ql/security/authorization/plugin/sqlstd/SQLStdHiveAccessController.java (original)
+++ hive/branches/cbo/ql/src/java/org/apache/hadoop/hive/ql/security/authorization/plugin/sqlstd/SQLStdHiveAccessController.java Fri Aug 22 21:36:47 2014
@@ -50,6 +50,8 @@ import org.apache.hadoop.hive.ql.securit
 import org.apache.hadoop.hive.ql.security.authorization.plugin.HiveAccessControlException;
 import org.apache.hadoop.hive.ql.security.authorization.plugin.HiveAccessController;
 import org.apache.hadoop.hive.ql.security.authorization.plugin.HiveAuthzPluginException;
+import org.apache.hadoop.hive.ql.security.authorization.plugin.HiveAuthzSessionContext;
+import org.apache.hadoop.hive.ql.security.authorization.plugin.HiveAuthzSessionContext.CLIENT_TYPE;
 import org.apache.hadoop.hive.ql.security.authorization.plugin.HiveMetastoreClientFactory;
 import org.apache.hadoop.hive.ql.security.authorization.plugin.HivePrincipal;
 import org.apache.hadoop.hive.ql.security.authorization.plugin.HivePrivilege;
@@ -81,13 +83,46 @@ public class SQLStdHiveAccessController 
       + "have it as current role, for this action.";
   private final String HAS_ADMIN_PRIV_MSG = "grantor need to have ADMIN OPTION on role being"
       + " granted and have it as a current role for this action.";
+  private final HiveAuthzSessionContext sessionCtx;
   public static final Log LOG = LogFactory.getLog(SQLStdHiveAccessController.class);
 
   public SQLStdHiveAccessController(HiveMetastoreClientFactory metastoreClientFactory, HiveConf conf,
-      HiveAuthenticationProvider authenticator) throws HiveAuthzPluginException {
+      HiveAuthenticationProvider authenticator, HiveAuthzSessionContext ctx) throws HiveAuthzPluginException {
     this.metastoreClientFactory = metastoreClientFactory;
     this.authenticator = authenticator;
+    this.sessionCtx = applyTestSettings(ctx, conf);
+
+    assertHiveCliAuthDisabled(conf);
     initUserRoles();
+    LOG.info("Created SQLStdHiveAccessController for session context : " + sessionCtx);
+  }
+
+  /**
+   * Change the session context based on configuration to aid in testing of sql std auth
+   * @param ctx
+   * @param conf
+   * @return
+   */
+  private HiveAuthzSessionContext applyTestSettings(HiveAuthzSessionContext ctx, HiveConf conf) {
+    if(conf.getBoolVar(ConfVars.HIVE_TEST_AUTHORIZATION_SQLSTD_HS2_MODE) &&
+        ctx.getClientType() == CLIENT_TYPE.HIVECLI
+        ){
+      // create new session ctx object with HS2 as client type
+      HiveAuthzSessionContext.Builder ctxBuilder = new HiveAuthzSessionContext.Builder(ctx);
+      ctxBuilder.setClientType(CLIENT_TYPE.HIVESERVER2);
+      return ctxBuilder.build();
+    }
+    return ctx;
+  }
+
+  private void assertHiveCliAuthDisabled(HiveConf conf) throws HiveAuthzPluginException {
+    if (sessionCtx.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");
+    }
   }
 
   /**
@@ -671,31 +706,37 @@ public class SQLStdHiveAccessController 
 
   @Override
   public void applyAuthorizationConfigPolicy(HiveConf hiveConf) {
-    // grant all privileges for table to its owner
+    // First apply configuration applicable to both Hive Cli and HiveServer2
+    // Not adding any authorization related restrictions to hive cli
+    // grant all privileges for table to its owner - set this in cli as well so that owner
+    // has permissions via HiveServer2 as well.
     hiveConf.setVar(ConfVars.HIVE_AUTHORIZATION_TABLE_OWNER_GRANTS, "INSERT,SELECT,UPDATE,DELETE");
 
-    // Configure PREEXECHOOKS with DisallowTransformHook to disallow transform queries
-    String hooks = hiveConf.getVar(ConfVars.PREEXECHOOKS).trim();
-    if (hooks.isEmpty()) {
-      hooks = DisallowTransformHook.class.getName();
-    } else {
-      hooks = hooks + "," +DisallowTransformHook.class.getName();
-    }
-    LOG.debug("Configuring hooks : " + hooks);
-    hiveConf.setVar(ConfVars.PREEXECHOOKS, hooks);
-
-    // restrict the variables that can be set using set command to a list in whitelist
-    hiveConf.setIsModWhiteListEnabled(true);
-    String whiteListParamsStr = hiveConf.getVar(ConfVars.HIVE_AUTHORIZATION_SQL_STD_AUTH_CONFIG_WHITELIST);
-    if (whiteListParamsStr == null || whiteListParamsStr.trim().equals("")){
-      // set the default configs in whitelist
-      whiteListParamsStr = Joiner.on(",").join(defaultModWhiteListSqlStdAuth);
-      hiveConf.setVar(ConfVars.HIVE_AUTHORIZATION_SQL_STD_AUTH_CONFIG_WHITELIST, whiteListParamsStr);
-    }
-    for(String whiteListParam : whiteListParamsStr.split(",")){
-      hiveConf.addToModifiableWhiteList(whiteListParam);
-    }
+    // Apply rest of the configuration only to HiveServer2
+    if(sessionCtx.getClientType() == CLIENT_TYPE.HIVESERVER2) {
+      // Configure PREEXECHOOKS with DisallowTransformHook to disallow transform queries
+      String hooks = hiveConf.getVar(ConfVars.PREEXECHOOKS).trim();
+      if (hooks.isEmpty()) {
+        hooks = DisallowTransformHook.class.getName();
+      } else {
+        hooks = hooks + "," +DisallowTransformHook.class.getName();
+      }
+      LOG.debug("Configuring hooks : " + hooks);
+      hiveConf.setVar(ConfVars.PREEXECHOOKS, hooks);
 
+      // restrict the variables that can be set using set command to a list in whitelist
+      hiveConf.setIsModWhiteListEnabled(true);
+      String whiteListParamsStr = hiveConf.getVar(ConfVars.HIVE_AUTHORIZATION_SQL_STD_AUTH_CONFIG_WHITELIST);
+      if (whiteListParamsStr == null || whiteListParamsStr.trim().equals("")){
+        // set the default configs in whitelist
+        whiteListParamsStr = Joiner.on(",").join(defaultModWhiteListSqlStdAuth);
+        hiveConf.setVar(ConfVars.HIVE_AUTHORIZATION_SQL_STD_AUTH_CONFIG_WHITELIST, whiteListParamsStr);
+      }
+      for(String whiteListParam : whiteListParamsStr.split(",")){
+        hiveConf.addToModifiableWhiteList(whiteListParam);
+      }
+    }
   }
 
+
 }

Modified: hive/branches/cbo/ql/src/java/org/apache/hadoop/hive/ql/security/authorization/plugin/sqlstd/SQLStdHiveAuthorizationValidator.java
URL: http://svn.apache.org/viewvc/hive/branches/cbo/ql/src/java/org/apache/hadoop/hive/ql/security/authorization/plugin/sqlstd/SQLStdHiveAuthorizationValidator.java?rev=1619936&r1=1619935&r2=1619936&view=diff
==============================================================================
--- hive/branches/cbo/ql/src/java/org/apache/hadoop/hive/ql/security/authorization/plugin/sqlstd/SQLStdHiveAuthorizationValidator.java (original)
+++ hive/branches/cbo/ql/src/java/org/apache/hadoop/hive/ql/security/authorization/plugin/sqlstd/SQLStdHiveAuthorizationValidator.java Fri Aug 22 21:36:47 2014
@@ -94,6 +94,11 @@ public class SQLStdHiveAuthorizationVali
       RequiredPrivileges requiredPrivs = Operation2Privilege.getRequiredPrivs(hiveOpType, hiveObj,
           ioType);
 
+      if(requiredPrivs.getRequiredPrivilegeSet().isEmpty()){
+        // no privileges required, so don't need to check this object privileges
+        continue;
+      }
+
       // find available privileges
       RequiredPrivileges availPrivs = new RequiredPrivileges(); //start with an empty priv set;
       switch (hiveObj.getType()) {

Modified: hive/branches/cbo/ql/src/java/org/apache/hadoop/hive/ql/security/authorization/plugin/sqlstd/SQLStdHiveAuthorizerFactory.java
URL: http://svn.apache.org/viewvc/hive/branches/cbo/ql/src/java/org/apache/hadoop/hive/ql/security/authorization/plugin/sqlstd/SQLStdHiveAuthorizerFactory.java?rev=1619936&r1=1619935&r2=1619936&view=diff
==============================================================================
--- hive/branches/cbo/ql/src/java/org/apache/hadoop/hive/ql/security/authorization/plugin/sqlstd/SQLStdHiveAuthorizerFactory.java (original)
+++ hive/branches/cbo/ql/src/java/org/apache/hadoop/hive/ql/security/authorization/plugin/sqlstd/SQLStdHiveAuthorizerFactory.java Fri Aug 22 21:36:47 2014
@@ -24,15 +24,16 @@ import org.apache.hadoop.hive.ql.securit
 import org.apache.hadoop.hive.ql.security.authorization.plugin.HiveAuthorizerFactory;
 import org.apache.hadoop.hive.ql.security.authorization.plugin.HiveAuthorizerImpl;
 import org.apache.hadoop.hive.ql.security.authorization.plugin.HiveAuthzPluginException;
+import org.apache.hadoop.hive.ql.security.authorization.plugin.HiveAuthzSessionContext;
 import org.apache.hadoop.hive.ql.security.authorization.plugin.HiveMetastoreClientFactory;
 
 @Private
 public class SQLStdHiveAuthorizerFactory implements HiveAuthorizerFactory{
   @Override
   public HiveAuthorizer createHiveAuthorizer(HiveMetastoreClientFactory metastoreClientFactory,
-      HiveConf conf, HiveAuthenticationProvider authenticator) throws HiveAuthzPluginException {
+      HiveConf conf, HiveAuthenticationProvider authenticator, HiveAuthzSessionContext ctx) throws HiveAuthzPluginException {
     SQLStdHiveAccessController privilegeManager =
-        new SQLStdHiveAccessController(metastoreClientFactory, conf, authenticator);
+        new SQLStdHiveAccessController(metastoreClientFactory, conf, authenticator, ctx);
     return new HiveAuthorizerImpl(
         privilegeManager,
         new SQLStdHiveAuthorizationValidator(metastoreClientFactory, conf, authenticator,

Modified: hive/branches/cbo/ql/src/java/org/apache/hadoop/hive/ql/session/SessionState.java
URL: http://svn.apache.org/viewvc/hive/branches/cbo/ql/src/java/org/apache/hadoop/hive/ql/session/SessionState.java?rev=1619936&r1=1619935&r2=1619936&view=diff
==============================================================================
--- hive/branches/cbo/ql/src/java/org/apache/hadoop/hive/ql/session/SessionState.java (original)
+++ hive/branches/cbo/ql/src/java/org/apache/hadoop/hive/ql/session/SessionState.java Fri Aug 22 21:36:47 2014
@@ -62,6 +62,8 @@ import org.apache.hadoop.hive.ql.securit
 import org.apache.hadoop.hive.ql.security.authorization.HiveAuthorizationProvider;
 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.HiveAuthzSessionContext;
+import org.apache.hadoop.hive.ql.security.authorization.plugin.HiveAuthzSessionContext.CLIENT_TYPE;
 import org.apache.hadoop.hive.ql.security.authorization.plugin.HiveMetastoreClientFactoryImpl;
 import org.apache.hadoop.hive.ql.util.DosToUnix;
 import org.apache.hadoop.hive.shims.ShimLoader;
@@ -504,8 +506,13 @@ public class SessionState {
         HiveAuthorizerFactory authorizerFactory = HiveUtils.getAuthorizerFactory(conf,
             HiveConf.ConfVars.HIVE_AUTHORIZATION_MANAGER);
 
+        HiveAuthzSessionContext.Builder authzContextBuilder = new HiveAuthzSessionContext.Builder();
+        authzContextBuilder.setClientType(isHiveServerQuery() ? CLIENT_TYPE.HIVESERVER2
+            : CLIENT_TYPE.HIVECLI);
+        authzContextBuilder.setSessionString(getSessionId());
+
         authorizerV2 = authorizerFactory.createHiveAuthorizer(new HiveMetastoreClientFactoryImpl(),
-            conf, authenticator);
+            conf, authenticator, authzContextBuilder.build());
 
         authorizerV2.applyAuthorizationConfigPolicy(conf);
         // create the create table grants with new config

Modified: hive/branches/cbo/ql/src/java/org/apache/hadoop/hive/ql/stats/StatsUtils.java
URL: http://svn.apache.org/viewvc/hive/branches/cbo/ql/src/java/org/apache/hadoop/hive/ql/stats/StatsUtils.java?rev=1619936&r1=1619935&r2=1619936&view=diff
==============================================================================
--- hive/branches/cbo/ql/src/java/org/apache/hadoop/hive/ql/stats/StatsUtils.java (original)
+++ hive/branches/cbo/ql/src/java/org/apache/hadoop/hive/ql/stats/StatsUtils.java Fri Aug 22 21:36:47 2014
@@ -18,11 +18,8 @@
 
 package org.apache.hadoop.hive.ql.stats;
 
-import java.util.ArrayList;
-import java.util.HashMap;
-import java.util.List;
-import java.util.Map;
-
+import com.google.common.base.Joiner;
+import com.google.common.collect.Lists;
 import org.apache.commons.logging.Log;
 import org.apache.commons.logging.LogFactory;
 import org.apache.hadoop.fs.FileSystem;
@@ -79,8 +76,12 @@ import org.apache.hadoop.hive.serde2.obj
 import org.apache.hadoop.hive.serde2.objectinspector.primitive.WritableTimestampObjectInspector;
 import org.apache.hadoop.io.BytesWritable;
 
-import com.google.common.base.Joiner;
-import com.google.common.collect.Lists;
+import java.util.ArrayList;
+import java.util.HashMap;
+import java.util.HashSet;
+import java.util.List;
+import java.util.Map;
+import java.util.Set;
 
 public class StatsUtils {
 
@@ -1232,4 +1233,33 @@ public class StatsUtils {
     }
     return result;
   }
+
+  /**
+   * Returns all table aliases from expression nodes
+   * @param columnExprMap - column expression map
+   * @return
+   */
+  public static Set<String> getAllTableAlias(
+      Map<String, ExprNodeDesc> columnExprMap) {
+    Set<String> result = new HashSet<String>();
+    if (columnExprMap != null) {
+      for (ExprNodeDesc end : columnExprMap.values()) {
+        getTableAliasFromExprNode(end, result);
+      }
+    }
+    return result;
+  }
+
+  private static void getTableAliasFromExprNode(ExprNodeDesc end,
+      Set<String> output) {
+
+    if (end instanceof ExprNodeColumnDesc) {
+      output.add(((ExprNodeColumnDesc) end).getTabAlias());
+    } else if (end instanceof ExprNodeGenericFuncDesc) {
+      for (ExprNodeDesc child : end.getChildren()) {
+        getTableAliasFromExprNode(child, output);
+      }
+    }
+
+  }
 }

Modified: hive/branches/cbo/ql/src/java/org/apache/hadoop/hive/ql/txn/compactor/CompactorMR.java
URL: http://svn.apache.org/viewvc/hive/branches/cbo/ql/src/java/org/apache/hadoop/hive/ql/txn/compactor/CompactorMR.java?rev=1619936&r1=1619935&r2=1619936&view=diff
==============================================================================
--- hive/branches/cbo/ql/src/java/org/apache/hadoop/hive/ql/txn/compactor/CompactorMR.java (original)
+++ hive/branches/cbo/ql/src/java/org/apache/hadoop/hive/ql/txn/compactor/CompactorMR.java Fri Aug 22 21:36:47 2014
@@ -39,6 +39,7 @@ import org.apache.hadoop.hive.serde.serd
 import org.apache.hadoop.hive.serde2.objectinspector.ObjectInspector;
 import org.apache.hadoop.io.NullWritable;
 import org.apache.hadoop.io.Writable;
+import org.apache.hadoop.io.WritableComparable;
 import org.apache.hadoop.mapred.InputFormat;
 import org.apache.hadoop.mapred.InputSplit;
 import org.apache.hadoop.mapred.JobClient;
@@ -485,20 +486,21 @@ public class CompactorMR {
   }
 
   static class CompactorMap<V extends Writable>
-      implements Mapper<NullWritable, CompactorInputSplit,  NullWritable,  NullWritable> {
+      implements Mapper<WritableComparable, CompactorInputSplit,  NullWritable,  NullWritable> {
 
     JobConf jobConf;
     RecordWriter writer;
 
     @Override
-    public void map(NullWritable key, CompactorInputSplit split,
+    public void map(WritableComparable key, CompactorInputSplit split,
                     OutputCollector<NullWritable, NullWritable> nullWritableVOutputCollector,
                     Reporter reporter) throws IOException {
       // This will only get called once, since CompactRecordReader only returns one record,
       // the input split.
       // Based on the split we're passed we go instantiate the real reader and then iterate on it
       // until it finishes.
-      AcidInputFormat aif =
+      @SuppressWarnings("unchecked")//since there is no way to parametrize instance of Class
+      AcidInputFormat<WritableComparable, V> aif =
           instantiate(AcidInputFormat.class, jobConf.get(INPUT_FORMAT_CLASS_NAME));
       ValidTxnList txnList =
           new ValidTxnListImpl(jobConf.get(ValidTxnList.VALID_TXNS_KEY));
@@ -541,7 +543,8 @@ public class CompactorMR {
             .bucket(bucket);
 
         // Instantiate the underlying output format
-        AcidOutputFormat<V> aof =
+        @SuppressWarnings("unchecked")//since there is no way to parametrize instance of Class
+        AcidOutputFormat<WritableComparable, V> aof =
             instantiate(AcidOutputFormat.class, jobConf.get(OUTPUT_FORMAT_CLASS_NAME));
 
         writer = aof.getRawRecordWriter(new Path(jobConf.get(TMP_LOCATION)), options);

Modified: hive/branches/cbo/ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDAFStreamingEvaluator.java
URL: http://svn.apache.org/viewvc/hive/branches/cbo/ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDAFStreamingEvaluator.java?rev=1619936&r1=1619935&r2=1619936&view=diff
==============================================================================
--- hive/branches/cbo/ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDAFStreamingEvaluator.java (original)
+++ hive/branches/cbo/ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDAFStreamingEvaluator.java Fri Aug 22 21:36:47 2014
@@ -179,6 +179,7 @@ public abstract class GenericUDAFStreami
 
       for (int i = 0; i < ss.numFollowing; i++) {
         ss.results.add(getNextResult(ss));
+        ss.numRows++;
       }
       return o;
     }

Modified: hive/branches/cbo/ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFCase.java
URL: http://svn.apache.org/viewvc/hive/branches/cbo/ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFCase.java?rev=1619936&r1=1619935&r2=1619936&view=diff
==============================================================================
--- hive/branches/cbo/ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFCase.java (original)
+++ hive/branches/cbo/ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFCase.java Fri Aug 22 21:36:47 2014
@@ -18,6 +18,7 @@
 
 package org.apache.hadoop.hive.ql.udf.generic;
 
+import org.apache.hadoop.hive.ql.exec.Description;
 import org.apache.hadoop.hive.ql.exec.UDFArgumentTypeException;
 import org.apache.hadoop.hive.ql.metadata.HiveException;
 import org.apache.hadoop.hive.serde2.objectinspector.ObjectInspector;
@@ -31,6 +32,23 @@ import org.apache.hadoop.hive.serde2.obj
  * thrown. 2. c and f should be compatible types, or an exception will be
  * thrown.
  */
+@Description(
+    name = "case",
+    value = "CASE a WHEN b THEN c [WHEN d THEN e]* [ELSE f] END - "
+        + "When a = b, returns c; when a = d, return e; else return f",
+    extended = "Example:\n "
+    + "SELECT\n"
+    + " CASE deptno\n"
+    + "   WHEN 1 THEN Engineering\n"
+    + "   WHEN 2 THEN Finance\n"
+    + "   ELSE admin\n"
+    + " END,\n"
+    + " CASE zone\n"
+    + "   WHEN 7 THEN Americas\n"
+    + "   ELSE Asia-Pac\n"
+    + " END\n"
+    + " FROM emp_details")
+
 public class GenericUDFCase extends GenericUDF {
   private transient ObjectInspector[] argumentOIs;
   private transient GenericUDFUtils.ReturnObjectInspectorResolver returnOIResolver;

Modified: hive/branches/cbo/ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFLag.java
URL: http://svn.apache.org/viewvc/hive/branches/cbo/ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFLag.java?rev=1619936&r1=1619935&r2=1619936&view=diff
==============================================================================
--- hive/branches/cbo/ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFLag.java (original)
+++ hive/branches/cbo/ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFLag.java Fri Aug 22 21:36:47 2014
@@ -18,8 +18,17 @@
 
 package org.apache.hadoop.hive.ql.udf.generic;
 
+import org.apache.hadoop.hive.ql.exec.Description;
 import org.apache.hadoop.hive.ql.metadata.HiveException;
 import org.apache.hadoop.hive.ql.udf.UDFType;
+@Description(
+    name = "lag",
+    value = "LAG  (scalar_expression [,offset] [,default]) OVER ([query_partition_clause] order_by_clause); "
+        + "The LAG function is used to access data from a previous row.",
+    extended = "Example:\n "
+    + "select p1.p_mfgr, p1.p_name, p1.p_size,\n"
+    + " p1.p_size - lag(p1.p_size,1,p1.p_size) over( distribute by p1.p_mfgr sort by p1.p_name) as deltaSz\n"
+    + " from part p1 join part p2 on p1.p_partkey = p2.p_partkey")
 
 @UDFType(impliesOrder = true)
 public class GenericUDFLag extends GenericUDFLeadLag {

Modified: hive/branches/cbo/ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFLead.java
URL: http://svn.apache.org/viewvc/hive/branches/cbo/ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFLead.java?rev=1619936&r1=1619935&r2=1619936&view=diff
==============================================================================
--- hive/branches/cbo/ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFLead.java (original)
+++ hive/branches/cbo/ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFLead.java Fri Aug 22 21:36:47 2014
@@ -18,8 +18,19 @@
 
 package org.apache.hadoop.hive.ql.udf.generic;
 
+import org.apache.hadoop.hive.ql.exec.Description;
 import org.apache.hadoop.hive.ql.metadata.HiveException;
 import org.apache.hadoop.hive.ql.udf.UDFType;
+@Description(
+    name = "lead",
+    value = "LEAD (scalar_expression [,offset] [,default]) OVER ([query_partition_clause] order_by_clause); "
+        + "The LEAD function is used to return data from the next row. ",
+    extended = "Example:\n "
+    + "select p_name, p_retailprice, lead(p_retailprice) over() as l1,\n"
+    + " lag(p_retailprice) over() as l2\n"
+    + " from part\n"
+    + " where p_retailprice = 1173.15")
+
 
 @UDFType(impliesOrder = true)
 public class GenericUDFLead extends GenericUDFLeadLag {

Modified: hive/branches/cbo/ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFWhen.java
URL: http://svn.apache.org/viewvc/hive/branches/cbo/ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFWhen.java?rev=1619936&r1=1619935&r2=1619936&view=diff
==============================================================================
--- hive/branches/cbo/ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFWhen.java (original)
+++ hive/branches/cbo/ql/src/java/org/apache/hadoop/hive/ql/udf/generic/GenericUDFWhen.java Fri Aug 22 21:36:47 2014
@@ -18,6 +18,7 @@
 
 package org.apache.hadoop.hive.ql.udf.generic;
 
+import org.apache.hadoop.hive.ql.exec.Description;
 import org.apache.hadoop.hive.ql.exec.UDFArgumentTypeException;
 import org.apache.hadoop.hive.ql.metadata.HiveException;
 import org.apache.hadoop.hive.serde.serdeConstants;
@@ -31,6 +32,23 @@ import org.apache.hadoop.hive.serde2.obj
  * NOTES: 1. a and c should be boolean, or an exception will be thrown. 2. b, d
  * and f should be common types, or an exception will be thrown.
  */
+@Description(
+    name = "when",
+    value = "CASE WHEN a THEN b [WHEN c THEN d]* [ELSE e] END - "
+        + "When a = true, returns b; when c = true, return d; else return e",
+    extended = "Example:\n "
+    + "SELECT\n"
+    + " CASE\n"
+    + "   WHEN deptno=1 THEN Engineering\n"
+    + "   WHEN deptno=2 THEN Finance\n"
+    + "   ELSE admin\n"
+    + " END,\n"
+    + " CASE\n"
+    + "   WHEN zone=7 THEN Americas\n"
+    + "   ELSE Asia-Pac\n"
+    + " END\n"
+    + " FROM emp_details")
+
 public class GenericUDFWhen extends GenericUDF {
   private transient ObjectInspector[] argumentOIs;
   private transient GenericUDFUtils.ReturnObjectInspectorResolver returnOIResolver;

Modified: hive/branches/cbo/ql/src/test/org/apache/hadoop/hive/ql/exec/TestUtilities.java
URL: http://svn.apache.org/viewvc/hive/branches/cbo/ql/src/test/org/apache/hadoop/hive/ql/exec/TestUtilities.java?rev=1619936&r1=1619935&r2=1619936&view=diff
==============================================================================
--- hive/branches/cbo/ql/src/test/org/apache/hadoop/hive/ql/exec/TestUtilities.java (original)
+++ hive/branches/cbo/ql/src/test/org/apache/hadoop/hive/ql/exec/TestUtilities.java Fri Aug 22 21:36:47 2014
@@ -118,14 +118,13 @@ public class TestUtilities extends TestC
   }
 
   private void checkFSUMaskReset(boolean recursiveArg) throws IllegalArgumentException, IOException {
-    final String FS_MASK_PARAM = "fs.permissions.umask-mode";
     final String FS_MASK_VAL = "055";
     HiveConf conf = new HiveConf();
     String dir = System.getProperty("test.tmp.dir") + "/testUtilitiesUMaskReset";
-    conf.set(FS_MASK_PARAM, FS_MASK_VAL);
+    conf.set(FsPermission.UMASK_LABEL, FS_MASK_VAL);
     Utilities.createDirsWithPermission(conf, new Path(dir), new FsPermission((short) 00777),
         recursiveArg);
-    assertEquals(conf.get(FS_MASK_PARAM), FS_MASK_VAL);
+    assertEquals(conf.get(FsPermission.UMASK_LABEL), FS_MASK_VAL);
   }
 
 

Modified: hive/branches/cbo/ql/src/test/org/apache/hadoop/hive/ql/exec/vector/expressions/TestVectorTypeCasts.java
URL: http://svn.apache.org/viewvc/hive/branches/cbo/ql/src/test/org/apache/hadoop/hive/ql/exec/vector/expressions/TestVectorTypeCasts.java?rev=1619936&r1=1619935&r2=1619936&view=diff
==============================================================================
--- hive/branches/cbo/ql/src/test/org/apache/hadoop/hive/ql/exec/vector/expressions/TestVectorTypeCasts.java (original)
+++ hive/branches/cbo/ql/src/test/org/apache/hadoop/hive/ql/exec/vector/expressions/TestVectorTypeCasts.java Fri Aug 22 21:36:47 2014
@@ -332,7 +332,7 @@ public class TestVectorTypeCasts {
         StringExpr.compare(v, 0, v.length,
             r.vector[1], r.start[1], r.length[1]));
 
-    v = toBytes("9999999999999999");
+    v = toBytes("9999999999999999.00");
     Assert.assertEquals(0,
         StringExpr.compare(v, 0, v.length,
             r.vector[2], r.start[2], r.length[2]));

Modified: hive/branches/cbo/ql/src/test/org/apache/hadoop/hive/ql/io/orc/TestInputOutputFormat.java
URL: http://svn.apache.org/viewvc/hive/branches/cbo/ql/src/test/org/apache/hadoop/hive/ql/io/orc/TestInputOutputFormat.java?rev=1619936&r1=1619935&r2=1619936&view=diff
==============================================================================
--- hive/branches/cbo/ql/src/test/org/apache/hadoop/hive/ql/io/orc/TestInputOutputFormat.java (original)
+++ hive/branches/cbo/ql/src/test/org/apache/hadoop/hive/ql/io/orc/TestInputOutputFormat.java Fri Aug 22 21:36:47 2014
@@ -973,7 +973,7 @@ public class TestInputOutputFormat {
     List<? extends StructField> fields =inspector.getAllStructFieldRefs();
     IntObjectInspector intInspector =
         (IntObjectInspector) fields.get(0).getFieldObjectInspector();
-    assertEquals(0.0, reader.getProgress(), 0.00001);
+    assertEquals(0.33, reader.getProgress(), 0.01);
     while (reader.next(key, value)) {
       assertEquals(++rowNum, intInspector.get(inspector.
           getStructFieldData(serde.deserialize(value), fields.get(0))));

Modified: hive/branches/cbo/ql/src/test/org/apache/hadoop/hive/ql/io/orc/TestOrcRecordUpdater.java
URL: http://svn.apache.org/viewvc/hive/branches/cbo/ql/src/test/org/apache/hadoop/hive/ql/io/orc/TestOrcRecordUpdater.java?rev=1619936&r1=1619935&r2=1619936&view=diff
==============================================================================
--- hive/branches/cbo/ql/src/test/org/apache/hadoop/hive/ql/io/orc/TestOrcRecordUpdater.java (original)
+++ hive/branches/cbo/ql/src/test/org/apache/hadoop/hive/ql/io/orc/TestOrcRecordUpdater.java Fri Aug 22 21:36:47 2014
@@ -24,6 +24,7 @@ import org.apache.hadoop.fs.Path;
 import org.apache.hadoop.hive.ql.io.AcidOutputFormat;
 import org.apache.hadoop.hive.ql.io.AcidUtils;
 import org.apache.hadoop.hive.ql.io.RecordUpdater;
+import org.apache.hadoop.hive.serde2.SerDeStats;
 import org.apache.hadoop.hive.serde2.objectinspector.ObjectInspector;
 import org.apache.hadoop.hive.serde2.objectinspector.ObjectInspectorFactory;
 import org.apache.hadoop.io.IntWritable;
@@ -95,6 +96,10 @@ public class TestOrcRecordUpdater {
     updater.insert(12, new MyRow("fourth"));
     updater.insert(12, new MyRow("fifth"));
     updater.flush();
+
+    // Check the stats
+    assertEquals(5L, updater.getStats().getRowCount());
+
     Path bucketPath = AcidUtils.createFilename(root, options);
     Path sidePath = OrcRecordUpdater.getSideFile(bucketPath);
     DataInputStream side = fs.open(sidePath);
@@ -158,6 +163,8 @@ public class TestOrcRecordUpdater {
     reader = OrcFile.createReader(bucketPath,
         new OrcFile.ReaderOptions(conf).filesystem(fs));
     assertEquals(6, reader.getNumberOfRows());
+    assertEquals(6L, updater.getStats().getRowCount());
+
     assertEquals(false, fs.exists(sidePath));
   }
 
@@ -182,6 +189,7 @@ public class TestOrcRecordUpdater {
     RecordUpdater updater = new OrcRecordUpdater(root, options);
     updater.update(100, 10, 30, new MyRow("update"));
     updater.delete(100, 40, 60);
+    assertEquals(-1L, updater.getStats().getRowCount());
     updater.close(false);
     Path bucketPath = AcidUtils.createFilename(root, options);
 

Modified: hive/branches/cbo/ql/src/test/org/apache/hadoop/hive/ql/io/parquet/TestHiveSchemaConverter.java
URL: http://svn.apache.org/viewvc/hive/branches/cbo/ql/src/test/org/apache/hadoop/hive/ql/io/parquet/TestHiveSchemaConverter.java?rev=1619936&r1=1619935&r2=1619936&view=diff
==============================================================================
--- hive/branches/cbo/ql/src/test/org/apache/hadoop/hive/ql/io/parquet/TestHiveSchemaConverter.java (original)
+++ hive/branches/cbo/ql/src/test/org/apache/hadoop/hive/ql/io/parquet/TestHiveSchemaConverter.java Fri Aug 22 21:36:47 2014
@@ -88,6 +88,26 @@ public class TestHiveSchemaConverter {
   }
 
   @Test
+  public void testCharType() throws Exception {
+    testConversion(
+        "a",
+        "char(5)",
+        "message hive_schema {\n"
+            + "  optional binary a (UTF8);\n"
+            + "}\n");
+  }
+
+  @Test
+  public void testVarcharType() throws Exception {
+    testConversion(
+        "a",
+        "varchar(10)",
+        "message hive_schema {\n"
+            + "  optional binary a (UTF8);\n"
+            + "}\n");
+  }
+
+  @Test
   public void testArray() throws Exception {
     testConversion("arrayCol",
             "array<int>",

Modified: hive/branches/cbo/ql/src/test/org/apache/hadoop/hive/ql/io/sarg/TestSearchArgumentImpl.java
URL: http://svn.apache.org/viewvc/hive/branches/cbo/ql/src/test/org/apache/hadoop/hive/ql/io/sarg/TestSearchArgumentImpl.java?rev=1619936&r1=1619935&r2=1619936&view=diff
==============================================================================
--- hive/branches/cbo/ql/src/test/org/apache/hadoop/hive/ql/io/sarg/TestSearchArgumentImpl.java (original)
+++ hive/branches/cbo/ql/src/test/org/apache/hadoop/hive/ql/io/sarg/TestSearchArgumentImpl.java Fri Aug 22 21:36:47 2014
@@ -18,15 +18,7 @@
 
 package org.apache.hadoop.hive.ql.io.sarg;
 
-import static junit.framework.Assert.assertEquals;
-import static junit.framework.Assert.assertTrue;
-
-import java.beans.XMLDecoder;
-import java.io.ByteArrayInputStream;
-import java.io.UnsupportedEncodingException;
-import java.util.List;
-import java.util.Set;
-
+import com.google.common.collect.Sets;
 import org.apache.hadoop.hive.common.type.HiveChar;
 import org.apache.hadoop.hive.common.type.HiveDecimal;
 import org.apache.hadoop.hive.common.type.HiveVarchar;
@@ -37,7 +29,15 @@ import org.apache.hadoop.hive.ql.plan.Ex
 import org.apache.hadoop.hive.serde2.io.DateWritable;
 import org.junit.Test;
 
-import com.google.common.collect.Sets;
+import java.beans.XMLDecoder;
+import java.io.ByteArrayInputStream;
+import java.io.UnsupportedEncodingException;
+import java.math.BigDecimal;
+import java.util.List;
+import java.util.Set;
+
+import static junit.framework.Assert.assertEquals;
+import static junit.framework.Assert.assertTrue;
 
 /**
  * These test the SARG implementation.
@@ -2828,7 +2828,7 @@ public class TestSearchArgumentImpl {
             .build();
     assertEquals("leaf-0 = (LESS_THAN x 1970-01-11)\n" +
         "leaf-1 = (LESS_THAN_EQUALS y hi)\n" +
-        "leaf-2 = (EQUALS z 1)\n" +
+        "leaf-2 = (EQUALS z 1.0)\n" +
         "expr = (and leaf-0 leaf-1 leaf-2)", sarg.toString());
 
     sarg = SearchArgument.FACTORY.newBuilder()
@@ -2847,4 +2847,36 @@ public class TestSearchArgumentImpl {
         "leaf-3 = (NULL_SAFE_EQUALS a stinger)\n" +
         "expr = (and (not leaf-0) (not leaf-1) (not leaf-2) (not leaf-3))", sarg.toString());
   }
+
+  @Test
+  public void testBuilderComplexTypes2() throws Exception {
+    SearchArgument sarg =
+        SearchArgument.FACTORY.newBuilder()
+            .startAnd()
+            .lessThan("x", new DateWritable(10))
+            .lessThanEquals("y", new HiveChar("hi", 10))
+            .equals("z", new BigDecimal("1.0"))
+            .end()
+            .build();
+    assertEquals("leaf-0 = (LESS_THAN x 1970-01-11)\n" +
+        "leaf-1 = (LESS_THAN_EQUALS y hi)\n" +
+        "leaf-2 = (EQUALS z 1.0)\n" +
+        "expr = (and leaf-0 leaf-1 leaf-2)", sarg.toString());
+
+    sarg = SearchArgument.FACTORY.newBuilder()
+        .startNot()
+        .startOr()
+        .isNull("x")
+        .between("y", new BigDecimal(10), 20.0)
+        .in("z", (byte)1, (short)2, (int)3)
+        .nullSafeEquals("a", new HiveVarchar("stinger", 100))
+        .end()
+        .end()
+        .build();
+    assertEquals("leaf-0 = (IS_NULL x)\n" +
+        "leaf-1 = (BETWEEN y 10 20.0)\n" +
+        "leaf-2 = (IN z 1 2 3)\n" +
+        "leaf-3 = (NULL_SAFE_EQUALS a stinger)\n" +
+        "expr = (and (not leaf-0) (not leaf-1) (not leaf-2) (not leaf-3))", sarg.toString());
+  }
 }

Modified: hive/branches/cbo/ql/src/test/org/apache/hadoop/hive/ql/lockmgr/TestDbTxnManager.java
URL: http://svn.apache.org/viewvc/hive/branches/cbo/ql/src/test/org/apache/hadoop/hive/ql/lockmgr/TestDbTxnManager.java?rev=1619936&r1=1619935&r2=1619936&view=diff
==============================================================================
--- hive/branches/cbo/ql/src/test/org/apache/hadoop/hive/ql/lockmgr/TestDbTxnManager.java (original)
+++ hive/branches/cbo/ql/src/test/org/apache/hadoop/hive/ql/lockmgr/TestDbTxnManager.java Fri Aug 22 21:36:47 2014
@@ -21,12 +21,12 @@ import junit.framework.Assert;
 import org.apache.hadoop.fs.Path;
 import org.apache.hadoop.hive.conf.HiveConf;
 import org.apache.hadoop.hive.metastore.api.FieldSchema;
-import org.apache.hadoop.hive.metastore.txn.TxnDbUtil;
+import org.apache.hadoop.hive.metastore.api.ShowLocksResponse;import org.apache.hadoop.hive.metastore.api.ShowLocksResponseElement;import org.apache.hadoop.hive.metastore.txn.TxnDbUtil;
 import org.apache.hadoop.hive.ql.Context;
 import org.apache.hadoop.hive.ql.QueryPlan;
 import org.apache.hadoop.hive.ql.hooks.ReadEntity;
 import org.apache.hadoop.hive.ql.hooks.WriteEntity;
-import org.apache.hadoop.hive.ql.metadata.Partition;
+import org.apache.hadoop.hive.ql.metadata.DummyPartition;import org.apache.hadoop.hive.ql.metadata.Partition;
 import org.apache.hadoop.hive.ql.metadata.Table;
 import org.apache.hadoop.hive.ql.session.SessionState;
 import org.apache.log4j.Level;
@@ -137,6 +137,43 @@ public class TestDbTxnManager {
     Assert.assertEquals(0, locks.size());
   }
 
+
+  @Test
+  public void testSingleWritePartition() throws Exception {
+    WriteEntity we = addPartitionOutput(newTable(true), WriteEntity.WriteType.INSERT);
+    QueryPlan qp = new MockQueryPlan(this);
+    txnMgr.openTxn("fred");
+    txnMgr.acquireLocks(qp, ctx, "fred");
+    List<HiveLock> locks = ctx.getHiveLocks();
+    Assert.assertEquals(1, locks.size());
+    Assert.assertEquals(1,
+        TxnDbUtil.countLockComponents(((DbLockManager.DbHiveLock) locks.get(0)).lockId));
+    txnMgr.commitTxn();
+    locks = txnMgr.getLockManager().getLocks(false, false);
+    Assert.assertEquals(0, locks.size());
+  }
+
+  @Test
+  public void testWriteDynamicPartition() throws Exception {
+    WriteEntity we = addDynamicPartitionedOutput(newTable(true), WriteEntity.WriteType.INSERT);
+    QueryPlan qp = new MockQueryPlan(this);
+    txnMgr.openTxn("fred");
+    txnMgr.acquireLocks(qp, ctx, "fred");
+    List<HiveLock> locks = ctx.getHiveLocks();
+    Assert.assertEquals(1, locks.size());
+    /*Assert.assertEquals(1,
+        TxnDbUtil.countLockComponents(((DbLockManager.DbHiveLock) locks.get(0)).lockId));
+    */// Make sure we're locking the whole table, since this is dynamic partitioning
+    ShowLocksResponse rsp = ((DbLockManager)txnMgr.getLockManager()).getLocks();
+    List<ShowLocksResponseElement> elms = rsp.getLocks();
+    Assert.assertEquals(1, elms.size());
+    Assert.assertNotNull(elms.get(0).getTablename());
+    Assert.assertNull(elms.get(0).getPartname());
+    txnMgr.commitTxn();
+    locks = txnMgr.getLockManager().getLocks(false, false);
+    Assert.assertEquals(0, locks.size());
+  }
+
   @Test
   public void testReadWrite() throws Exception {
     Table t = newTable(true);
@@ -252,6 +289,7 @@ public class TestDbTxnManager {
 
   @After
   public void tearDown() throws Exception {
+    if (txnMgr != null) txnMgr.closeTxnManager();
     TxnDbUtil.cleanDb();
   }
 
@@ -318,4 +356,12 @@ public class TestDbTxnManager {
     writeEntities.add(we);
     return we;
   }
+
+  private WriteEntity addDynamicPartitionedOutput(Table t, WriteEntity.WriteType writeType)
+      throws Exception {
+    DummyPartition dp = new DummyPartition(t, "no clue what I should call this");
+    WriteEntity we = new WriteEntity(dp, writeType, false);
+    writeEntities.add(we);
+    return we;
+  }
 }

Modified: hive/branches/cbo/ql/src/test/org/apache/hadoop/hive/ql/parse/TestQBCompact.java
URL: http://svn.apache.org/viewvc/hive/branches/cbo/ql/src/test/org/apache/hadoop/hive/ql/parse/TestQBCompact.java?rev=1619936&r1=1619935&r2=1619936&view=diff
==============================================================================
--- hive/branches/cbo/ql/src/test/org/apache/hadoop/hive/ql/parse/TestQBCompact.java (original)
+++ hive/branches/cbo/ql/src/test/org/apache/hadoop/hive/ql/parse/TestQBCompact.java Fri Aug 22 21:36:47 2014
@@ -65,7 +65,6 @@ public class TestQBCompact {
   private AlterTableSimpleDesc parseAndAnalyze(String query) throws Exception {
     ParseDriver hd = new ParseDriver();
     ASTNode head = (ASTNode)hd.parse(query).getChild(0);
-    System.out.println("HERE " + head.dump());
     BaseSemanticAnalyzer a = SemanticAnalyzerFactory.get(conf, head);
     a.analyze(head, new Context(conf));
     List<Task<? extends Serializable>> roots = a.getRootTasks();

Modified: hive/branches/cbo/ql/src/test/org/apache/hadoop/hive/ql/parse/authorization/TestSessionUserName.java
URL: http://svn.apache.org/viewvc/hive/branches/cbo/ql/src/test/org/apache/hadoop/hive/ql/parse/authorization/TestSessionUserName.java?rev=1619936&r1=1619935&r2=1619936&view=diff
==============================================================================
--- hive/branches/cbo/ql/src/test/org/apache/hadoop/hive/ql/parse/authorization/TestSessionUserName.java (original)
+++ hive/branches/cbo/ql/src/test/org/apache/hadoop/hive/ql/parse/authorization/TestSessionUserName.java Fri Aug 22 21:36:47 2014
@@ -28,6 +28,7 @@ import org.apache.hadoop.hive.ql.securit
 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.HiveAuthorizerImpl;
+import org.apache.hadoop.hive.ql.security.authorization.plugin.HiveAuthzSessionContext;
 import org.apache.hadoop.hive.ql.security.authorization.plugin.HiveMetastoreClientFactory;
 import org.apache.hadoop.hive.ql.session.SessionState;
 import org.junit.Before;
@@ -111,7 +112,7 @@ public class TestSessionUserName {
 
     @Override
     public HiveAuthorizer createHiveAuthorizer(HiveMetastoreClientFactory metastoreClientFactory,
-        HiveConf conf, HiveAuthenticationProvider authenticator) {
+        HiveConf conf, HiveAuthenticationProvider authenticator, HiveAuthzSessionContext ctx) {
       username = authenticator.getUserName();
       HiveAccessController acontroller = Mockito.mock(HiveAccessController.class);
       return new HiveAuthorizerImpl(acontroller, null);

Modified: hive/branches/cbo/ql/src/test/org/apache/hadoop/hive/ql/txn/compactor/CompactorTest.java
URL: http://svn.apache.org/viewvc/hive/branches/cbo/ql/src/test/org/apache/hadoop/hive/ql/txn/compactor/CompactorTest.java?rev=1619936&r1=1619935&r2=1619936&view=diff
==============================================================================
--- hive/branches/cbo/ql/src/test/org/apache/hadoop/hive/ql/txn/compactor/CompactorTest.java (original)
+++ hive/branches/cbo/ql/src/test/org/apache/hadoop/hive/ql/txn/compactor/CompactorTest.java Fri Aug 22 21:36:47 2014
@@ -36,9 +36,9 @@ import org.apache.hadoop.hive.ql.io.Reco
 import org.apache.hadoop.hive.ql.io.RecordUpdater;
 import org.apache.hadoop.hive.serde2.lazy.LazySimpleSerDe;
 import org.apache.hadoop.hive.serde2.objectinspector.ObjectInspector;
-import org.apache.hadoop.io.NullWritable;
 import org.apache.hadoop.io.Text;
 import org.apache.hadoop.io.Writable;
+import org.apache.hadoop.io.WritableComparable;
 import org.apache.hadoop.mapred.*;
 import org.apache.hadoop.util.Progressable;
 import org.apache.thrift.TException;
@@ -276,7 +276,7 @@ public abstract class CompactorTest {
     }
   }
 
-  static class MockInputFormat implements AcidInputFormat<Text> {
+  static class MockInputFormat implements AcidInputFormat<WritableComparable,Text> {
 
     @Override
     public AcidInputFormat.RowReader<Text> getReader(InputSplit split,
@@ -315,7 +315,7 @@ public abstract class CompactorTest {
     }
 
     @Override
-    public RecordReader<NullWritable, Text> getRecordReader(InputSplit inputSplit, JobConf entries,
+    public RecordReader<WritableComparable, Text> getRecordReader(InputSplit inputSplit, JobConf entries,
                                                             Reporter reporter) throws IOException {
       return null;
     }
@@ -398,7 +398,7 @@ public abstract class CompactorTest {
   // This class isn't used and I suspect does totally the wrong thing.  It's only here so that I
   // can provide some output format to the tables and partitions I create.  I actually write to
   // those tables directory.
-  static class MockOutputFormat implements AcidOutputFormat<Text> {
+  static class MockOutputFormat implements AcidOutputFormat<WritableComparable, Text> {
 
     @Override
     public RecordUpdater getRecordUpdater(Path path, Options options) throws
@@ -420,7 +420,7 @@ public abstract class CompactorTest {
     }
 
     @Override
-    public RecordWriter<NullWritable, Text> getRecordWriter(FileSystem fileSystem, JobConf entries,
+    public RecordWriter<WritableComparable, Text> getRecordWriter(FileSystem fileSystem, JobConf entries,
                                                             String s,
                                                             Progressable progressable) throws
         IOException {

Modified: hive/branches/cbo/ql/src/test/org/apache/hadoop/hive/ql/udf/generic/TestGenericUDFOPDivide.java
URL: http://svn.apache.org/viewvc/hive/branches/cbo/ql/src/test/org/apache/hadoop/hive/ql/udf/generic/TestGenericUDFOPDivide.java?rev=1619936&r1=1619935&r2=1619936&view=diff
==============================================================================
--- hive/branches/cbo/ql/src/test/org/apache/hadoop/hive/ql/udf/generic/TestGenericUDFOPDivide.java (original)
+++ hive/branches/cbo/ql/src/test/org/apache/hadoop/hive/ql/udf/generic/TestGenericUDFOPDivide.java Fri Aug 22 21:36:47 2014
@@ -187,7 +187,7 @@ public class TestGenericUDFOPDivide exte
     PrimitiveObjectInspector oi = (PrimitiveObjectInspector) udf.initialize(inputOIs);
     Assert.assertEquals(TypeInfoFactory.getDecimalTypeInfo(11, 7), oi.getTypeInfo());
     HiveDecimalWritable res = (HiveDecimalWritable) udf.evaluate(args);
-    Assert.assertEquals(HiveDecimal.create("0.06171"), res.getHiveDecimal());
+    Assert.assertEquals(HiveDecimal.create("0.0617100"), res.getHiveDecimal());
   }
 
   @Test

Modified: hive/branches/cbo/ql/src/test/queries/clientnegative/authorization_addjar.q
URL: http://svn.apache.org/viewvc/hive/branches/cbo/ql/src/test/queries/clientnegative/authorization_addjar.q?rev=1619936&r1=1619935&r2=1619936&view=diff
==============================================================================
--- hive/branches/cbo/ql/src/test/queries/clientnegative/authorization_addjar.q (original)
+++ hive/branches/cbo/ql/src/test/queries/clientnegative/authorization_addjar.q Fri Aug 22 21:36:47 2014
@@ -1,3 +1,4 @@
+set hive.test.authz.sstd.hs2.mode=true;
 set hive.security.authorization.enabled=true;
 set hive.security.authorization.manager=org.apache.hadoop.hive.ql.security.authorization.plugin.sqlstd.SQLStdHiveAuthorizerFactory;
 

Modified: hive/branches/cbo/ql/src/test/queries/clientnegative/authorization_addpartition.q
URL: http://svn.apache.org/viewvc/hive/branches/cbo/ql/src/test/queries/clientnegative/authorization_addpartition.q?rev=1619936&r1=1619935&r2=1619936&view=diff
==============================================================================
--- hive/branches/cbo/ql/src/test/queries/clientnegative/authorization_addpartition.q (original)
+++ hive/branches/cbo/ql/src/test/queries/clientnegative/authorization_addpartition.q Fri Aug 22 21:36:47 2014
@@ -1,3 +1,4 @@
+set hive.test.authz.sstd.hs2.mode=true;
 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 hive.security.authorization.enabled=true;

Modified: hive/branches/cbo/ql/src/test/queries/clientnegative/authorization_alter_db_owner.q
URL: http://svn.apache.org/viewvc/hive/branches/cbo/ql/src/test/queries/clientnegative/authorization_alter_db_owner.q?rev=1619936&r1=1619935&r2=1619936&view=diff
==============================================================================
--- hive/branches/cbo/ql/src/test/queries/clientnegative/authorization_alter_db_owner.q (original)
+++ hive/branches/cbo/ql/src/test/queries/clientnegative/authorization_alter_db_owner.q Fri Aug 22 21:36:47 2014
@@ -1,3 +1,4 @@
+set hive.test.authz.sstd.hs2.mode=true;
 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 hive.security.authorization.enabled=true;

Modified: hive/branches/cbo/ql/src/test/queries/clientnegative/authorization_alter_db_owner_default.q
URL: http://svn.apache.org/viewvc/hive/branches/cbo/ql/src/test/queries/clientnegative/authorization_alter_db_owner_default.q?rev=1619936&r1=1619935&r2=1619936&view=diff
==============================================================================
--- hive/branches/cbo/ql/src/test/queries/clientnegative/authorization_alter_db_owner_default.q (original)
+++ hive/branches/cbo/ql/src/test/queries/clientnegative/authorization_alter_db_owner_default.q Fri Aug 22 21:36:47 2014
@@ -1,3 +1,4 @@
+set hive.test.authz.sstd.hs2.mode=true;
 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 hive.security.authorization.enabled=true;

Modified: hive/branches/cbo/ql/src/test/queries/clientnegative/authorization_cannot_create_all_role.q
URL: http://svn.apache.org/viewvc/hive/branches/cbo/ql/src/test/queries/clientnegative/authorization_cannot_create_all_role.q?rev=1619936&r1=1619935&r2=1619936&view=diff
==============================================================================
--- hive/branches/cbo/ql/src/test/queries/clientnegative/authorization_cannot_create_all_role.q (original)
+++ hive/branches/cbo/ql/src/test/queries/clientnegative/authorization_cannot_create_all_role.q Fri Aug 22 21:36:47 2014
@@ -1,3 +1,4 @@
+set hive.test.authz.sstd.hs2.mode=true;
 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_admin_user;

Modified: hive/branches/cbo/ql/src/test/queries/clientnegative/authorization_cannot_create_default_role.q
URL: http://svn.apache.org/viewvc/hive/branches/cbo/ql/src/test/queries/clientnegative/authorization_cannot_create_default_role.q?rev=1619936&r1=1619935&r2=1619936&view=diff
==============================================================================
--- hive/branches/cbo/ql/src/test/queries/clientnegative/authorization_cannot_create_default_role.q (original)
+++ hive/branches/cbo/ql/src/test/queries/clientnegative/authorization_cannot_create_default_role.q Fri Aug 22 21:36:47 2014
@@ -1,3 +1,4 @@
+set hive.test.authz.sstd.hs2.mode=true;
 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_admin_user;

Modified: hive/branches/cbo/ql/src/test/queries/clientnegative/authorization_cannot_create_none_role.q
URL: http://svn.apache.org/viewvc/hive/branches/cbo/ql/src/test/queries/clientnegative/authorization_cannot_create_none_role.q?rev=1619936&r1=1619935&r2=1619936&view=diff
==============================================================================
--- hive/branches/cbo/ql/src/test/queries/clientnegative/authorization_cannot_create_none_role.q (original)
+++ hive/branches/cbo/ql/src/test/queries/clientnegative/authorization_cannot_create_none_role.q Fri Aug 22 21:36:47 2014
@@ -1,3 +1,4 @@
+set hive.test.authz.sstd.hs2.mode=true;
 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_admin_user;

Modified: hive/branches/cbo/ql/src/test/queries/clientnegative/authorization_caseinsensitivity.q
URL: http://svn.apache.org/viewvc/hive/branches/cbo/ql/src/test/queries/clientnegative/authorization_caseinsensitivity.q?rev=1619936&r1=1619935&r2=1619936&view=diff
==============================================================================
--- hive/branches/cbo/ql/src/test/queries/clientnegative/authorization_caseinsensitivity.q (original)
+++ hive/branches/cbo/ql/src/test/queries/clientnegative/authorization_caseinsensitivity.q Fri Aug 22 21:36:47 2014
@@ -1,3 +1,4 @@
+set hive.test.authz.sstd.hs2.mode=true;
 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_admin_user;

Modified: hive/branches/cbo/ql/src/test/queries/clientnegative/authorization_compile.q
URL: http://svn.apache.org/viewvc/hive/branches/cbo/ql/src/test/queries/clientnegative/authorization_compile.q?rev=1619936&r1=1619935&r2=1619936&view=diff
==============================================================================
--- hive/branches/cbo/ql/src/test/queries/clientnegative/authorization_compile.q (original)
+++ hive/branches/cbo/ql/src/test/queries/clientnegative/authorization_compile.q Fri Aug 22 21:36:47 2014
@@ -1,3 +1,4 @@
+set hive.test.authz.sstd.hs2.mode=true;
 set hive.security.authorization.enabled=true;
 set hive.security.authorization.manager=org.apache.hadoop.hive.ql.security.authorization.plugin.sqlstd.SQLStdHiveAuthorizerFactory;
 

Modified: hive/branches/cbo/ql/src/test/queries/clientnegative/authorization_create_func1.q
URL: http://svn.apache.org/viewvc/hive/branches/cbo/ql/src/test/queries/clientnegative/authorization_create_func1.q?rev=1619936&r1=1619935&r2=1619936&view=diff
==============================================================================
--- hive/branches/cbo/ql/src/test/queries/clientnegative/authorization_create_func1.q (original)
+++ hive/branches/cbo/ql/src/test/queries/clientnegative/authorization_create_func1.q Fri Aug 22 21:36:47 2014
@@ -1,3 +1,4 @@
+set hive.test.authz.sstd.hs2.mode=true;
 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 hive.security.authorization.enabled=true;

Modified: hive/branches/cbo/ql/src/test/queries/clientnegative/authorization_create_func2.q
URL: http://svn.apache.org/viewvc/hive/branches/cbo/ql/src/test/queries/clientnegative/authorization_create_func2.q?rev=1619936&r1=1619935&r2=1619936&view=diff
==============================================================================
--- hive/branches/cbo/ql/src/test/queries/clientnegative/authorization_create_func2.q (original)
+++ hive/branches/cbo/ql/src/test/queries/clientnegative/authorization_create_func2.q Fri Aug 22 21:36:47 2014
@@ -1,3 +1,4 @@
+set hive.test.authz.sstd.hs2.mode=true;
 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 hive.security.authorization.enabled=true;

Modified: hive/branches/cbo/ql/src/test/queries/clientnegative/authorization_create_macro1.q
URL: http://svn.apache.org/viewvc/hive/branches/cbo/ql/src/test/queries/clientnegative/authorization_create_macro1.q?rev=1619936&r1=1619935&r2=1619936&view=diff
==============================================================================
--- hive/branches/cbo/ql/src/test/queries/clientnegative/authorization_create_macro1.q (original)
+++ hive/branches/cbo/ql/src/test/queries/clientnegative/authorization_create_macro1.q Fri Aug 22 21:36:47 2014
@@ -1,3 +1,4 @@
+set hive.test.authz.sstd.hs2.mode=true;
 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 hive.security.authorization.enabled=true;

Modified: hive/branches/cbo/ql/src/test/queries/clientnegative/authorization_create_role_no_admin.q
URL: http://svn.apache.org/viewvc/hive/branches/cbo/ql/src/test/queries/clientnegative/authorization_create_role_no_admin.q?rev=1619936&r1=1619935&r2=1619936&view=diff
==============================================================================
--- hive/branches/cbo/ql/src/test/queries/clientnegative/authorization_create_role_no_admin.q (original)
+++ hive/branches/cbo/ql/src/test/queries/clientnegative/authorization_create_role_no_admin.q Fri Aug 22 21:36:47 2014
@@ -1,3 +1,4 @@
+set hive.test.authz.sstd.hs2.mode=true;
 set hive.security.authorization.manager=org.apache.hadoop.hive.ql.security.authorization.plugin.sqlstd.SQLStdHiveAuthorizerFactoryForTest;
 -- this test will fail because hive_test_user is not in admin role.
 create role r1;

Modified: hive/branches/cbo/ql/src/test/queries/clientnegative/authorization_createview.q
URL: http://svn.apache.org/viewvc/hive/branches/cbo/ql/src/test/queries/clientnegative/authorization_createview.q?rev=1619936&r1=1619935&r2=1619936&view=diff
==============================================================================
--- hive/branches/cbo/ql/src/test/queries/clientnegative/authorization_createview.q (original)
+++ hive/branches/cbo/ql/src/test/queries/clientnegative/authorization_createview.q Fri Aug 22 21:36:47 2014
@@ -1,3 +1,4 @@
+set hive.test.authz.sstd.hs2.mode=true;
 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 hive.security.authorization.enabled=true;

Modified: hive/branches/cbo/ql/src/test/queries/clientnegative/authorization_ctas.q
URL: http://svn.apache.org/viewvc/hive/branches/cbo/ql/src/test/queries/clientnegative/authorization_ctas.q?rev=1619936&r1=1619935&r2=1619936&view=diff
==============================================================================
--- hive/branches/cbo/ql/src/test/queries/clientnegative/authorization_ctas.q (original)
+++ hive/branches/cbo/ql/src/test/queries/clientnegative/authorization_ctas.q Fri Aug 22 21:36:47 2014
@@ -1,3 +1,4 @@
+set hive.test.authz.sstd.hs2.mode=true;
 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 hive.security.authorization.enabled=true;

Modified: hive/branches/cbo/ql/src/test/queries/clientnegative/authorization_deletejar.q
URL: http://svn.apache.org/viewvc/hive/branches/cbo/ql/src/test/queries/clientnegative/authorization_deletejar.q?rev=1619936&r1=1619935&r2=1619936&view=diff
==============================================================================
--- hive/branches/cbo/ql/src/test/queries/clientnegative/authorization_deletejar.q (original)
+++ hive/branches/cbo/ql/src/test/queries/clientnegative/authorization_deletejar.q Fri Aug 22 21:36:47 2014
@@ -1,3 +1,4 @@
+set hive.test.authz.sstd.hs2.mode=true;
 set hive.security.authorization.enabled=true;
 set hive.security.authorization.manager=org.apache.hadoop.hive.ql.security.authorization.plugin.sqlstd.SQLStdHiveAuthorizerFactory;
 

Modified: hive/branches/cbo/ql/src/test/queries/clientnegative/authorization_desc_table_nosel.q
URL: http://svn.apache.org/viewvc/hive/branches/cbo/ql/src/test/queries/clientnegative/authorization_desc_table_nosel.q?rev=1619936&r1=1619935&r2=1619936&view=diff
==============================================================================
--- hive/branches/cbo/ql/src/test/queries/clientnegative/authorization_desc_table_nosel.q (original)
+++ hive/branches/cbo/ql/src/test/queries/clientnegative/authorization_desc_table_nosel.q Fri Aug 22 21:36:47 2014
@@ -1,3 +1,4 @@
+set hive.test.authz.sstd.hs2.mode=true;
 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 hive.security.authorization.enabled=true;

Modified: hive/branches/cbo/ql/src/test/queries/clientnegative/authorization_dfs.q
URL: http://svn.apache.org/viewvc/hive/branches/cbo/ql/src/test/queries/clientnegative/authorization_dfs.q?rev=1619936&r1=1619935&r2=1619936&view=diff
==============================================================================
--- hive/branches/cbo/ql/src/test/queries/clientnegative/authorization_dfs.q (original)
+++ hive/branches/cbo/ql/src/test/queries/clientnegative/authorization_dfs.q Fri Aug 22 21:36:47 2014
@@ -1,3 +1,4 @@
+set hive.test.authz.sstd.hs2.mode=true;
 set hive.security.authorization.enabled=true;
 set hive.security.authorization.manager=org.apache.hadoop.hive.ql.security.authorization.plugin.sqlstd.SQLStdHiveAuthorizerFactory;
 

Modified: hive/branches/cbo/ql/src/test/queries/clientnegative/authorization_disallow_transform.q
URL: http://svn.apache.org/viewvc/hive/branches/cbo/ql/src/test/queries/clientnegative/authorization_disallow_transform.q?rev=1619936&r1=1619935&r2=1619936&view=diff
==============================================================================
--- hive/branches/cbo/ql/src/test/queries/clientnegative/authorization_disallow_transform.q (original)
+++ hive/branches/cbo/ql/src/test/queries/clientnegative/authorization_disallow_transform.q Fri Aug 22 21:36:47 2014
@@ -1,3 +1,4 @@
+set hive.test.authz.sstd.hs2.mode=true;
 set hive.security.authorization.manager=org.apache.hadoop.hive.ql.security.authorization.plugin.sqlstd.SQLStdHiveAuthorizerFactoryForTest;
 set role ALL;
 SELECT TRANSFORM (*) USING 'cat' AS (key, value) FROM src;

Modified: hive/branches/cbo/ql/src/test/queries/clientnegative/authorization_drop_admin_role.q
URL: http://svn.apache.org/viewvc/hive/branches/cbo/ql/src/test/queries/clientnegative/authorization_drop_admin_role.q?rev=1619936&r1=1619935&r2=1619936&view=diff
==============================================================================
--- hive/branches/cbo/ql/src/test/queries/clientnegative/authorization_drop_admin_role.q (original)
+++ hive/branches/cbo/ql/src/test/queries/clientnegative/authorization_drop_admin_role.q Fri Aug 22 21:36:47 2014
@@ -1,3 +1,4 @@
+set hive.test.authz.sstd.hs2.mode=true;
 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_admin_user;

Modified: hive/branches/cbo/ql/src/test/queries/clientnegative/authorization_drop_db_cascade.q
URL: http://svn.apache.org/viewvc/hive/branches/cbo/ql/src/test/queries/clientnegative/authorization_drop_db_cascade.q?rev=1619936&r1=1619935&r2=1619936&view=diff
==============================================================================
--- hive/branches/cbo/ql/src/test/queries/clientnegative/authorization_drop_db_cascade.q (original)
+++ hive/branches/cbo/ql/src/test/queries/clientnegative/authorization_drop_db_cascade.q Fri Aug 22 21:36:47 2014
@@ -1,3 +1,4 @@
+set hive.test.authz.sstd.hs2.mode=true;
 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 hive.security.authorization.enabled=true;

Modified: hive/branches/cbo/ql/src/test/queries/clientnegative/authorization_drop_db_empty.q
URL: http://svn.apache.org/viewvc/hive/branches/cbo/ql/src/test/queries/clientnegative/authorization_drop_db_empty.q?rev=1619936&r1=1619935&r2=1619936&view=diff
==============================================================================
--- hive/branches/cbo/ql/src/test/queries/clientnegative/authorization_drop_db_empty.q (original)
+++ hive/branches/cbo/ql/src/test/queries/clientnegative/authorization_drop_db_empty.q Fri Aug 22 21:36:47 2014
@@ -1,3 +1,4 @@
+set hive.test.authz.sstd.hs2.mode=true;
 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 hive.security.authorization.enabled=true;

Modified: hive/branches/cbo/ql/src/test/queries/clientnegative/authorization_drop_role_no_admin.q
URL: http://svn.apache.org/viewvc/hive/branches/cbo/ql/src/test/queries/clientnegative/authorization_drop_role_no_admin.q?rev=1619936&r1=1619935&r2=1619936&view=diff
==============================================================================
--- hive/branches/cbo/ql/src/test/queries/clientnegative/authorization_drop_role_no_admin.q (original)
+++ hive/branches/cbo/ql/src/test/queries/clientnegative/authorization_drop_role_no_admin.q Fri Aug 22 21:36:47 2014
@@ -1,3 +1,4 @@
+set hive.test.authz.sstd.hs2.mode=true;
 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_admin_user;

Modified: hive/branches/cbo/ql/src/test/queries/clientnegative/authorization_droppartition.q
URL: http://svn.apache.org/viewvc/hive/branches/cbo/ql/src/test/queries/clientnegative/authorization_droppartition.q?rev=1619936&r1=1619935&r2=1619936&view=diff
==============================================================================
--- hive/branches/cbo/ql/src/test/queries/clientnegative/authorization_droppartition.q (original)
+++ hive/branches/cbo/ql/src/test/queries/clientnegative/authorization_droppartition.q Fri Aug 22 21:36:47 2014
@@ -1,3 +1,4 @@
+set hive.test.authz.sstd.hs2.mode=true;
 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 hive.security.authorization.enabled=true;

Modified: hive/branches/cbo/ql/src/test/queries/clientnegative/authorization_fail_8.q
URL: http://svn.apache.org/viewvc/hive/branches/cbo/ql/src/test/queries/clientnegative/authorization_fail_8.q?rev=1619936&r1=1619935&r2=1619936&view=diff
==============================================================================
--- hive/branches/cbo/ql/src/test/queries/clientnegative/authorization_fail_8.q (original)
+++ hive/branches/cbo/ql/src/test/queries/clientnegative/authorization_fail_8.q Fri Aug 22 21:36:47 2014
@@ -1,3 +1,4 @@
+set hive.test.authz.sstd.hs2.mode=true;
 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;
 

Modified: hive/branches/cbo/ql/src/test/queries/clientnegative/authorization_grant_table_allpriv.q
URL: http://svn.apache.org/viewvc/hive/branches/cbo/ql/src/test/queries/clientnegative/authorization_grant_table_allpriv.q?rev=1619936&r1=1619935&r2=1619936&view=diff
==============================================================================
--- hive/branches/cbo/ql/src/test/queries/clientnegative/authorization_grant_table_allpriv.q (original)
+++ hive/branches/cbo/ql/src/test/queries/clientnegative/authorization_grant_table_allpriv.q Fri Aug 22 21:36:47 2014
@@ -1,3 +1,4 @@
+set hive.test.authz.sstd.hs2.mode=true;
 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;
 

Modified: hive/branches/cbo/ql/src/test/queries/clientnegative/authorization_grant_table_dup.q
URL: http://svn.apache.org/viewvc/hive/branches/cbo/ql/src/test/queries/clientnegative/authorization_grant_table_dup.q?rev=1619936&r1=1619935&r2=1619936&view=diff
==============================================================================
--- hive/branches/cbo/ql/src/test/queries/clientnegative/authorization_grant_table_dup.q (original)
+++ hive/branches/cbo/ql/src/test/queries/clientnegative/authorization_grant_table_dup.q Fri Aug 22 21:36:47 2014
@@ -1,3 +1,4 @@
+set hive.test.authz.sstd.hs2.mode=true;
 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;
 

Modified: hive/branches/cbo/ql/src/test/queries/clientnegative/authorization_grant_table_fail1.q
URL: http://svn.apache.org/viewvc/hive/branches/cbo/ql/src/test/queries/clientnegative/authorization_grant_table_fail1.q?rev=1619936&r1=1619935&r2=1619936&view=diff
==============================================================================
--- hive/branches/cbo/ql/src/test/queries/clientnegative/authorization_grant_table_fail1.q (original)
+++ hive/branches/cbo/ql/src/test/queries/clientnegative/authorization_grant_table_fail1.q Fri Aug 22 21:36:47 2014
@@ -1,3 +1,4 @@
+set hive.test.authz.sstd.hs2.mode=true;
 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;
 

Modified: hive/branches/cbo/ql/src/test/queries/clientnegative/authorization_grant_table_fail_nogrant.q
URL: http://svn.apache.org/viewvc/hive/branches/cbo/ql/src/test/queries/clientnegative/authorization_grant_table_fail_nogrant.q?rev=1619936&r1=1619935&r2=1619936&view=diff
==============================================================================
--- hive/branches/cbo/ql/src/test/queries/clientnegative/authorization_grant_table_fail_nogrant.q (original)
+++ hive/branches/cbo/ql/src/test/queries/clientnegative/authorization_grant_table_fail_nogrant.q Fri Aug 22 21:36:47 2014
@@ -1,3 +1,4 @@
+set hive.test.authz.sstd.hs2.mode=true;
 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;
 

Modified: hive/branches/cbo/ql/src/test/queries/clientnegative/authorization_insert_noinspriv.q
URL: http://svn.apache.org/viewvc/hive/branches/cbo/ql/src/test/queries/clientnegative/authorization_insert_noinspriv.q?rev=1619936&r1=1619935&r2=1619936&view=diff
==============================================================================
--- hive/branches/cbo/ql/src/test/queries/clientnegative/authorization_insert_noinspriv.q (original)
+++ hive/branches/cbo/ql/src/test/queries/clientnegative/authorization_insert_noinspriv.q Fri Aug 22 21:36:47 2014
@@ -1,3 +1,4 @@
+set hive.test.authz.sstd.hs2.mode=true;
 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 hive.security.authorization.enabled=true;

Modified: hive/branches/cbo/ql/src/test/queries/clientnegative/authorization_insert_noselectpriv.q
URL: http://svn.apache.org/viewvc/hive/branches/cbo/ql/src/test/queries/clientnegative/authorization_insert_noselectpriv.q?rev=1619936&r1=1619935&r2=1619936&view=diff
==============================================================================
--- hive/branches/cbo/ql/src/test/queries/clientnegative/authorization_insert_noselectpriv.q (original)
+++ hive/branches/cbo/ql/src/test/queries/clientnegative/authorization_insert_noselectpriv.q Fri Aug 22 21:36:47 2014
@@ -1,3 +1,4 @@
+set hive.test.authz.sstd.hs2.mode=true;
 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 hive.security.authorization.enabled=true;

Modified: hive/branches/cbo/ql/src/test/queries/clientnegative/authorization_insertoverwrite_nodel.q
URL: http://svn.apache.org/viewvc/hive/branches/cbo/ql/src/test/queries/clientnegative/authorization_insertoverwrite_nodel.q?rev=1619936&r1=1619935&r2=1619936&view=diff
==============================================================================
--- hive/branches/cbo/ql/src/test/queries/clientnegative/authorization_insertoverwrite_nodel.q (original)
+++ hive/branches/cbo/ql/src/test/queries/clientnegative/authorization_insertoverwrite_nodel.q Fri Aug 22 21:36:47 2014
@@ -1,3 +1,4 @@
+set hive.test.authz.sstd.hs2.mode=true;
 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 hive.security.authorization.enabled=true;

Modified: hive/branches/cbo/ql/src/test/queries/clientnegative/authorization_invalid_priv_v2.q
URL: http://svn.apache.org/viewvc/hive/branches/cbo/ql/src/test/queries/clientnegative/authorization_invalid_priv_v2.q?rev=1619936&r1=1619935&r2=1619936&view=diff
==============================================================================
--- hive/branches/cbo/ql/src/test/queries/clientnegative/authorization_invalid_priv_v2.q (original)
+++ hive/branches/cbo/ql/src/test/queries/clientnegative/authorization_invalid_priv_v2.q Fri Aug 22 21:36:47 2014
@@ -1,3 +1,4 @@
+set hive.test.authz.sstd.hs2.mode=true;
 set hive.security.authorization.manager=org.apache.hadoop.hive.ql.security.authorization.plugin.sqlstd.SQLStdHiveAuthorizerFactoryForTest;
 
 create table if not exists authorization_invalid_v2 (key int, value string);

Modified: hive/branches/cbo/ql/src/test/queries/clientnegative/authorization_not_owner_alter_tab_rename.q
URL: http://svn.apache.org/viewvc/hive/branches/cbo/ql/src/test/queries/clientnegative/authorization_not_owner_alter_tab_rename.q?rev=1619936&r1=1619935&r2=1619936&view=diff
==============================================================================
--- hive/branches/cbo/ql/src/test/queries/clientnegative/authorization_not_owner_alter_tab_rename.q (original)
+++ hive/branches/cbo/ql/src/test/queries/clientnegative/authorization_not_owner_alter_tab_rename.q Fri Aug 22 21:36:47 2014
@@ -1,3 +1,4 @@
+set hive.test.authz.sstd.hs2.mode=true;
 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 hive.security.authorization.enabled=true;

Modified: hive/branches/cbo/ql/src/test/queries/clientnegative/authorization_not_owner_alter_tab_serdeprop.q
URL: http://svn.apache.org/viewvc/hive/branches/cbo/ql/src/test/queries/clientnegative/authorization_not_owner_alter_tab_serdeprop.q?rev=1619936&r1=1619935&r2=1619936&view=diff
==============================================================================
--- hive/branches/cbo/ql/src/test/queries/clientnegative/authorization_not_owner_alter_tab_serdeprop.q (original)
+++ hive/branches/cbo/ql/src/test/queries/clientnegative/authorization_not_owner_alter_tab_serdeprop.q Fri Aug 22 21:36:47 2014
@@ -1,3 +1,4 @@
+set hive.test.authz.sstd.hs2.mode=true;
 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 hive.security.authorization.enabled=true;

Modified: hive/branches/cbo/ql/src/test/queries/clientnegative/authorization_not_owner_drop_tab.q
URL: http://svn.apache.org/viewvc/hive/branches/cbo/ql/src/test/queries/clientnegative/authorization_not_owner_drop_tab.q?rev=1619936&r1=1619935&r2=1619936&view=diff
==============================================================================
--- hive/branches/cbo/ql/src/test/queries/clientnegative/authorization_not_owner_drop_tab.q (original)
+++ hive/branches/cbo/ql/src/test/queries/clientnegative/authorization_not_owner_drop_tab.q Fri Aug 22 21:36:47 2014
@@ -1,3 +1,4 @@
+set hive.test.authz.sstd.hs2.mode=true;
 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 hive.security.authorization.enabled=true;

Modified: hive/branches/cbo/ql/src/test/queries/clientnegative/authorization_not_owner_drop_view.q
URL: http://svn.apache.org/viewvc/hive/branches/cbo/ql/src/test/queries/clientnegative/authorization_not_owner_drop_view.q?rev=1619936&r1=1619935&r2=1619936&view=diff
==============================================================================
--- hive/branches/cbo/ql/src/test/queries/clientnegative/authorization_not_owner_drop_view.q (original)
+++ hive/branches/cbo/ql/src/test/queries/clientnegative/authorization_not_owner_drop_view.q Fri Aug 22 21:36:47 2014
@@ -1,3 +1,4 @@
+set hive.test.authz.sstd.hs2.mode=true;
 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 hive.security.authorization.enabled=true;

Modified: hive/branches/cbo/ql/src/test/queries/clientnegative/authorization_priv_current_role_neg.q
URL: http://svn.apache.org/viewvc/hive/branches/cbo/ql/src/test/queries/clientnegative/authorization_priv_current_role_neg.q?rev=1619936&r1=1619935&r2=1619936&view=diff
==============================================================================
--- hive/branches/cbo/ql/src/test/queries/clientnegative/authorization_priv_current_role_neg.q (original)
+++ hive/branches/cbo/ql/src/test/queries/clientnegative/authorization_priv_current_role_neg.q Fri Aug 22 21:36:47 2014
@@ -1,3 +1,4 @@
+set hive.test.authz.sstd.hs2.mode=true;
 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_admin_user;