Github user satishd commented on a diff in the pull request:
https://github.com/apache/storm/pull/2527#discussion_r163188315
--- Diff:
external/storm-hbase/src/main/java/org/apache/storm/hbase/common/Utils.java ---
@@ -47,14 +48,28 @@ public static HTable getTable(UserProvider provider,
Configuration config, Strin
ugi = UserGroupInformation.getCurrentUser();
LOG.debug("UGI for current USER : {}", ugi.getUserName());
+ boolean foundHBaseAuthToken = false;
for (Token<? extends TokenIdentifier> token : ugi.getTokens())
{
LOG.debug("Token in UGI (delegation token): {} / {}",
token.toString(),
token.decodeIdentifier().getUser());
- // use UGI from token
- ugi = token.decodeIdentifier().getUser();
- ugi.addToken(token);
+ // token.getKind() = Text, Text is annotated by @Stringable
+ // which ensures toString() implementation
+ if
(token.getKind().toString().equals(TOKEN_KIND_HBASE_AUTH_TOKEN)) {
+ // use UGI from token
+ LOG.debug("Found HBASE_AUTH_TOKEN - using the token to
replace current user.");
+
+ ugi = token.decodeIdentifier().getUser();
+ ugi.addToken(token);
+
+ foundHBaseAuthToken = true;
--- End diff --
@HeartSaVioR Can there be more than one HBASE_AUTH_TOKEN token for the
current UGI?
---