[
https://issues.apache.org/jira/browse/TEZ-3904?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16506317#comment-16506317
]
Sergey Shelukhin commented on TEZ-3904:
---
Yeah that's the idea, although in the case of Tez the actual renewer may not
live fully in Tez (since some tokens, like the ones for HBase/etc., are
originally obtained by Hive, and some are obtained by Tez based on paths).
Might make sense to allow the users of Tez (ie Hive) to supply a function to
get the former instead of the tokens themselves, so Tez could get the new
tokens at any time.
The containers would also need to get tokens.
> an API to update tokens for Tez AM and the DAG
> --
>
> Key: TEZ-3904
> URL: https://issues.apache.org/jira/browse/TEZ-3904
> Project: Apache Tez
> Issue Type: Bug
>Reporter: Sergey Shelukhin
>Priority: Major
>
> Nothing is permanent in this world, lest of all delegation tokens.
> The current way around token expiration (the one where you cannot keep
> renewing anymore) in Hive when Tez AM is used in session mode is to cycle Tez
> AM. It may happen though that a query is running at that time, and so the AM
> cannot be restarted with new tokens. We let the query run its course and it
> usually dies because it tries to do something with an expired token.
> To get around that, we cycle AMs a few hours before tokens are going to
> expire.
> However, that is still not ideal because it puts an upper bound on safe Hive
> query runtime (a query longer than 3 hours with current config may fail due
> to an expired token if its timing is unlucky), and also precludes setting
> tokens to expire much faster than the standard 7-day time frame.
> There should be a mechanism to replace tokens in the AM, including for a
> running DAG.
--
This message was sent by Atlassian JIRA
(v7.6.3#76005)