jjiang037 commented on code in PR #5966:
URL: https://github.com/apache/hive/pull/5966#discussion_r2205978507


##########
ql/src/java/org/apache/hadoop/hive/ql/security/authorization/plugin/metastore/HiveMetaStoreAuthorizer.java:
##########
@@ -457,6 +486,17 @@ private List<String> 
filterTableNames(HiveMetaStoreAuthzInfo hiveMetaStoreAuthzI
       HiveAuthorizer hiveAuthorizer = createHiveMetaStoreAuthorizer();
       List<HivePrivilegeObject> hivePrivilegeObjects = 
hiveMetaStoreAuthzInfo.getInputHObjs();
       HiveAuthzContext hiveAuthzContext = 
hiveMetaStoreAuthzInfo.getHiveAuthzContext();
+      Map<String, Object> clientConfig = cConfig.get();
+      if (clientConfig != null) {
+        HiveAuthzContext.Builder builder = new HiveAuthzContext.Builder();
+        builder.setClientConfig(clientConfig);
+        if (hiveAuthzContext != null) {
+          builder.setCommandString(hiveAuthzContext.getCommandString());
+          builder.setUserIpAddress(hiveAuthzContext.getIpAddress());
+          
builder.setForwardedAddresses(hiveAuthzContext.getForwardedAddresses());
+        }
+        hiveAuthzContext = builder.build();
+      }

Review Comment:
   I didn't do it directly do hiveAuthzContext.setClientConfig(clientConfig) is 
because HiveAuthzContext is designed as an immutable class, the setter methods 
are only on the builder class, not on the main HiveAuthzContext class



##########
ql/src/java/org/apache/hadoop/hive/ql/security/authorization/plugin/metastore/HiveMetaStoreAuthorizer.java:
##########
@@ -457,6 +486,17 @@ private List<String> 
filterTableNames(HiveMetaStoreAuthzInfo hiveMetaStoreAuthzI
       HiveAuthorizer hiveAuthorizer = createHiveMetaStoreAuthorizer();
       List<HivePrivilegeObject> hivePrivilegeObjects = 
hiveMetaStoreAuthzInfo.getInputHObjs();
       HiveAuthzContext hiveAuthzContext = 
hiveMetaStoreAuthzInfo.getHiveAuthzContext();
+      Map<String, Object> clientConfig = cConfig.get();
+      if (clientConfig != null) {
+        HiveAuthzContext.Builder builder = new HiveAuthzContext.Builder();
+        builder.setClientConfig(clientConfig);
+        if (hiveAuthzContext != null) {
+          builder.setCommandString(hiveAuthzContext.getCommandString());
+          builder.setUserIpAddress(hiveAuthzContext.getIpAddress());
+          
builder.setForwardedAddresses(hiveAuthzContext.getForwardedAddresses());
+        }
+        hiveAuthzContext = builder.build();
+      }

Review Comment:
   I didn't do hiveAuthzContext.setClientConfig(clientConfig) is because 
HiveAuthzContext is designed as an immutable class, the setter methods are only 
on the builder class, not on the main HiveAuthzContext class



-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: gitbox-unsubscr...@hive.apache.org

For queries about this service, please contact Infrastructure at:
us...@infra.apache.org


---------------------------------------------------------------------
To unsubscribe, e-mail: gitbox-unsubscr...@hive.apache.org
For additional commands, e-mail: gitbox-h...@hive.apache.org

Reply via email to