-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
https://reviews.apache.org/r/40315/#review107706
-----------------------------------------------------------



common/src/java/org/apache/hadoop/hive/conf/HiveConf.java (line 2348)
<https://reviews.apache.org/r/40315/#comment166963>

    Description needs fixing.



common/src/java/org/apache/hadoop/hive/conf/HiveConf.java (line 2351)
<https://reviews.apache.org/r/40315/#comment166964>

    Don't think the default value - "*" - has any significance here. Replace by 
null - to avoid confusion.



llap-client/src/java/org/apache/hadoop/hive/llap/io/api/LlapIoProxy.java (line 
76)
<https://reviews.apache.org/r/40315/#comment166965>

    Rename class to LLAPProxy ? It's no longer limited to IO only.



llap-client/src/java/org/apache/hadoop/hive/llap/security/LlapTokenIdentifier.java
 (line 44)
<https://reviews.apache.org/r/40315/#comment166966>

    This and readFields - eventually should be implemented using a Protobuf 
payload. Allows the token to evolve during rolling upgrades.
    Separate jira.



llap-client/src/java/org/apache/hadoop/hive/llap/security/LlapTokenIdentifier.java
 (line 71)
<https://reviews.apache.org/r/40315/#comment166967>

    Does a renewer for a token type have to be specified ?



llap-server/src/java/org/apache/hadoop/hive/llap/daemon/impl/LlapDaemonProtocolClientImpl.java
 (line 128)
<https://reviews.apache.org/r/40315/#comment166968>

    This could be moved into it's own protocol (but listening on the same 
server).
    
    The methods so far are for access from the AM.
    
    getTokens is to be used by Clients.
    
    What that also allows is for the annotations to change.
    getTokens() - protected by Kerberos, and cannot be obtained using a token.
    Remaining methods - require a token.



llap-server/src/java/org/apache/hadoop/hive/llap/daemon/impl/LlapDaemonProtocolClientImpl.java
 (line 129)
<https://reviews.apache.org/r/40315/#comment166969>

    Rename to getDelegationToken ?



llap-server/src/java/org/apache/hadoop/hive/llap/daemon/impl/LlapDaemonProtocolServerImpl.java
 (line 79)
<https://reviews.apache.org/r/40315/#comment166970>

    throws IOException not required.



llap-server/src/java/org/apache/hadoop/hive/llap/daemon/impl/LlapDaemonProtocolServerImpl.java
 (line 133)
<https://reviews.apache.org/r/40315/#comment166971>

    Sanity checks for the values. Empty strings are not allowed.



llap-server/src/java/org/apache/hadoop/hive/llap/daemon/impl/LlapDaemonProtocolServerImpl.java
 (line 157)
<https://reviews.apache.org/r/40315/#comment166972>

    Avoid using the ZK property names. Instead, the properties defined for LLAP 
should be used.
    (ZK properties could leak in from some other service which uses the same 
SecretManager)



llap-server/src/java/org/apache/hadoop/hive/llap/daemon/impl/LlapDaemonProtocolServerImpl.java
 (line 164)
<https://reviews.apache.org/r/40315/#comment166973>

    New instances of Configuration if doing a set (this config is shared by 
several services)



llap-server/src/java/org/apache/hadoop/hive/llap/daemon/impl/LlapDaemonProtocolServerImpl.java
 (line 250)
<https://reviews.apache.org/r/40315/#comment166974>

    YARN can take care of renewing delegation tokens - assuming the service 
supports it (i.e. the ZKSecretManager on one of the LLAP instances or a direct 
connection to ZK from the RM - but that isn't a good idea).
    Eventually, I believe the renweer would need to change to the RM service 
user.



llap-server/src/java/org/apache/hadoop/hive/llap/security/LlapDaemonPolicyProvider.java
 (line 26)
<https://reviews.apache.org/r/40315/#comment166975>

    How is the default value picked up ? (definitely not from the hive conf)
    OR
    What is the default value - "*" or " ".
    I'm not sure how other services handle this - but  this can be set to " " 
by default on secure clusters, and "*" on non-secure clusters.



llap-server/src/java/org/apache/hadoop/hive/llap/security/LlapDaemonPolicyProvider.java
 (line 32)
<https://reviews.apache.org/r/40315/#comment166976>

    clone not required.



llap-server/src/java/org/apache/hadoop/hive/llap/security/LlapSecurityHelper.java
 (line 53)
<https://reviews.apache.org/r/40315/#comment166977>

    This would matter when running under HiveServer ? or is the synchronization 
in LlapIoProxy taking care of this ?



llap-server/src/java/org/apache/hadoop/hive/llap/security/LlapSecurityHelper.java
 (line 59)
<https://reviews.apache.org/r/40315/#comment166978>

    final. Also retryPolicy.



llap-server/src/java/org/apache/hadoop/hive/llap/security/LlapSecurityHelper.java
 (line 67)
<https://reviews.apache.org/r/40315/#comment166979>

    make configurable ?



llap-server/src/java/org/apache/hadoop/hive/llap/security/LlapSecurityHelper.java
 (line 94)
<https://reviews.apache.org/r/40315/#comment166980>

    Lots of TODOs - fix / convert to jira with a reference to the jira number ?



llap-server/src/java/org/apache/hadoop/hive/llap/tezplugins/TaskCommunicator.java
 (line 96)
<https://reviews.apache.org/r/40315/#comment166981>

    Stop logging the token.



llap-server/src/java/org/apache/hadoop/hive/llap/tezplugins/TaskCommunicator.java
 (line 100)
<https://reviews.apache.org/r/40315/#comment166983>

    Can be accessed via TaskCommunicatorContext. More on this in SessionState.



llap-server/src/java/org/apache/hadoop/hive/llap/tezplugins/TaskCommunicator.java
 (line 105)
<https://reviews.apache.org/r/40315/#comment166982>

    Stop logging the token.



llap-server/src/java/org/apache/hadoop/hive/llap/tezplugins/TaskCommunicator.java
 (line 511)
<https://reviews.apache.org/r/40315/#comment166984>

    Required for each host separately ? Setting the host may not be required.



ql/src/java/org/apache/hadoop/hive/ql/exec/tez/TezSessionState.java (line 319)
<https://reviews.apache.org/r/40315/#comment166985>

    Emailing the token to the AM in the Configuration is very avoidable.
    
    The token can be provided to Tez while creating the TezClient. TezClient 
will make this available to the TaskCommunicator via the 
TaskCommunicatorContext.getCredentials().
    
    See TokenCache.get/setSessionToken.
    The static string defined in HiveConf to send this token could be shortened 
and moved out of HiveConf.


Haven't looked at the details of the ZKSecretManager - but it looks like the 
Tokens issued by any of the LLAP instances can be used by an application to 
communicate with all other instances.
Also, are the tokens the same for different applications ?

- Siddharth Seth


On Nov. 16, 2015, 7:45 p.m., Sergey Shelukhin wrote:
> 
> -----------------------------------------------------------
> This is an automatically generated e-mail. To reply, visit:
> https://reviews.apache.org/r/40315/
> -----------------------------------------------------------
> 
> (Updated Nov. 16, 2015, 7:45 p.m.)
> 
> 
> Review request for hive, Gopal V and Siddharth Seth.
> 
> 
> Repository: hive-git
> 
> 
> Description
> -------
> 
> see JIRA
> 
> 
> Diffs
> -----
> 
>   common/src/java/org/apache/hadoop/hive/conf/HiveConf.java 838f25c 
>   llap-client/src/java/org/apache/hadoop/hive/llap/io/api/LlapIoProxy.java 
> 4c31e32 
>   
> llap-client/src/java/org/apache/hadoop/hive/llap/security/LlapTokenIdentifier.java
>  PRE-CREATION 
>   
> llap-client/src/java/org/apache/hadoop/hive/llap/security/LlapTokenProvider.java
>  PRE-CREATION 
>   
> llap-server/src/java/org/apache/hadoop/hive/llap/daemon/LlapDaemonProtocolBlockingPB.java
>  5ad2344 
>   
> llap-server/src/java/org/apache/hadoop/hive/llap/daemon/impl/LlapDaemon.java 
> 98b1ccd 
>   
> llap-server/src/java/org/apache/hadoop/hive/llap/daemon/impl/LlapDaemonProtocolClientImpl.java
>  4b13277 
>   
> llap-server/src/java/org/apache/hadoop/hive/llap/daemon/impl/LlapDaemonProtocolServerImpl.java
>  784c631 
>   
> llap-server/src/java/org/apache/hadoop/hive/llap/protocol/LlapTaskUmbilicalProtocol.java
>  fae7654 
>   
> llap-server/src/java/org/apache/hadoop/hive/llap/security/LlapDaemonPolicyProvider.java
>  PRE-CREATION 
>   
> llap-server/src/java/org/apache/hadoop/hive/llap/security/LlapSecurityHelper.java
>  PRE-CREATION 
>   
> llap-server/src/java/org/apache/hadoop/hive/llap/security/LlapServerSecurityInfo.java
>  PRE-CREATION 
>   
> llap-server/src/java/org/apache/hadoop/hive/llap/security/LlapTokenSelector.java
>  PRE-CREATION 
>   
> llap-server/src/java/org/apache/hadoop/hive/llap/tezplugins/LlapTaskCommunicator.java
>  d327fc0 
>   
> llap-server/src/java/org/apache/hadoop/hive/llap/tezplugins/LlapUmbilicalPolicyProvider.java
>  PRE-CREATION 
>   
> llap-server/src/java/org/apache/hadoop/hive/llap/tezplugins/TaskCommunicator.java
>  33e998c 
>   
> llap-server/src/main/resources/META-INF/services/org.apache.hadoop.security.SecurityInfo
>  PRE-CREATION 
>   llap-server/src/protobuf/LlapDaemonProtocol.proto 0ba6acf 
>   
> llap-server/src/test/org/apache/hadoop/hive/llap/daemon/impl/TestLlapDaemonProtocolServerImpl.java
>  8d45c95 
>   ql/src/java/org/apache/hadoop/hive/ql/exec/DDLTask.java 9ab3e98 
>   ql/src/java/org/apache/hadoop/hive/ql/exec/tez/TezSessionState.java 07f26be 
>   serde/src/java/org/apache/hadoop/hive/serde2/AbstractSerDe.java 9269ff4 
> 
> Diff: https://reviews.apache.org/r/40315/diff/
> 
> 
> Testing
> -------
> 
> 
> Thanks,
> 
> Sergey Shelukhin
> 
>

Reply via email to