Repository: sentry
Updated Branches:
  refs/heads/master 5a5a9d883 -> 76b65ee1d


SENTRY-2141: Sentry Privilege TimeStamp is not converted to grantTime in 
HivePrivilegeInfo correctly (Na Li, reviewed by Sergio Pena, Kalyan Kumar 
Kalvagadda, Arjun Mishra, Steve Moist, Alexander Kolbasov, Liam Sargent, Xinran 
Tinney)


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

Branch: refs/heads/master
Commit: 76b65ee1d205bb700e1894a1bb75a19a3c87f2d8
Parents: 5a5a9d8
Author: lina.li <[email protected]>
Authored: Tue Feb 20 14:55:35 2018 -0600
Committer: lina.li <[email protected]>
Committed: Tue Feb 20 14:55:35 2018 -0600

----------------------------------------------------------------------
 .../apache/sentry/binding/util/SentryAuthorizerUtil.java  | 10 +++++++++-
 1 file changed, 9 insertions(+), 1 deletion(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/sentry/blob/76b65ee1/sentry-binding/sentry-binding-hive/src/main/java/org/apache/sentry/binding/util/SentryAuthorizerUtil.java
----------------------------------------------------------------------
diff --git 
a/sentry-binding/sentry-binding-hive/src/main/java/org/apache/sentry/binding/util/SentryAuthorizerUtil.java
 
b/sentry-binding/sentry-binding-hive/src/main/java/org/apache/sentry/binding/util/SentryAuthorizerUtil.java
index b536283..1c41639 100644
--- 
a/sentry-binding/sentry-binding-hive/src/main/java/org/apache/sentry/binding/util/SentryAuthorizerUtil.java
+++ 
b/sentry-binding/sentry-binding-hive/src/main/java/org/apache/sentry/binding/util/SentryAuthorizerUtil.java
@@ -20,6 +20,7 @@ import java.net.URISyntaxException;
 import java.util.ArrayList;
 import java.util.List;
 import java.util.Set;
+import java.util.concurrent.TimeUnit;
 import org.apache.hadoop.conf.Configuration;
 import org.apache.hadoop.hive.common.JavaUtils;
 import org.apache.hadoop.hive.conf.HiveConf;
@@ -220,8 +221,15 @@ public class SentryAuthorizerUtil {
     HivePrincipal grantor = new HivePrincipal(UNKONWN_GRANTOR, 
HivePrincipalType.ROLE);
     boolean grantOption =
         tPrivilege.getGrantOption().equals(TSentryGrantOption.TRUE) ? true : 
false;
+
+    // Convert the timestamp in sentry, which is in milliseconds, to the 
timestamp in
+    // hive, which is in seconds
+    // The timestamp is the difference between the current time and midnight, 
January 1, 1970 UTC.
+    int hiveCreateTimeSeconds = 
(int)TimeUnit.SECONDS.convert(tPrivilege.getCreateTime(),
+        TimeUnit.MILLISECONDS);
+
     return new HivePrivilegeInfo(principal, hivePrivilege, 
hivePrivilegeObject, grantor,
-        grantOption, (int) tPrivilege.getCreateTime());
+        grantOption, hiveCreateTimeSeconds);
   }
 
   /**

Reply via email to