From 2fee951da66b70e299cc223ed5430d669576f2da Mon Sep 17 00:00:00 2001
From: Tim Armstrong <tarmstrong@cloudera.com>
Date: Sat, 9 Jun 2018 17:25:48 -0700
Subject: [PATCH] Fix IMPALA-7156 breakage in Sentry

Testing:
Confirmed that authorization tests unbreka when installed in my local
Maven repo.
---
 .../db/service/thrift/SentryPolicyServiceClientDefaultImpl.java    | 7 +++++--
 1 file changed, 5 insertions(+), 2 deletions(-)

diff --git a/sentry-provider/sentry-provider-db/src/main/java/org/apache/sentry/provider/db/service/thrift/SentryPolicyServiceClientDefaultImpl.java b/sentry-provider/sentry-provider-db/src/main/java/org/apache/sentry/provider/db/service/thrift/SentryPolicyServiceClientDefaultImpl.java
index d88735e..107243f 100644
--- a/sentry-provider/sentry-provider-db/src/main/java/org/apache/sentry/provider/db/service/thrift/SentryPolicyServiceClientDefaultImpl.java
+++ b/sentry-provider/sentry-provider-db/src/main/java/org/apache/sentry/provider/db/service/thrift/SentryPolicyServiceClientDefaultImpl.java
@@ -195,7 +195,10 @@ public class SentryPolicyServiceClientDefaultImpl implements SentryPolicyService
     TListSentryPrivilegesRequest request = new TListSentryPrivilegesRequest();
     request.setProtocol_version(ThriftConstants.TSENTRY_SERVICE_VERSION_CURRENT);
     request.setRequestorUserName(requestorUserName);
-    request.setRoleName(""); // 'roleName' is required but it is deprecated by 'entityName'
+     // 'roleName' is a required thrift field and is used by pre-SENTRY-2162 servers
+     // that do not recognize 'entityName'. Newer servers ignore 'roleName' when
+     // 'entityName' is present.
+    request.setRoleName(roleName);
     request.setEntityName(roleName);
     if (authorizable != null && !authorizable.isEmpty()) {
       TSentryAuthorizable tSentryAuthorizable = setupSentryAuthorizable(authorizable);
@@ -901,4 +904,4 @@ public class SentryPolicyServiceClientDefaultImpl implements SentryPolicyService
       transport = null;
     }
   }
-}
\ No newline at end of file
+}
-- 
1.9.1

