[
https://issues.apache.org/jira/browse/HIVE-16061?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15935256#comment-15935256
]
Prasanth Jayachandran commented on HIVE-16061:
----------------------------------------------
This was observed earlier in HIVE-14183. Ideally, we want to use MDC based log
redirection to operation log files and move away from the current threadlocal
because of the exact issue you had mentioned. MDC based routing is safe in the
context of Async logger and we currently use it in LLAP.
> When hive.async.log.enabled is set to true, some output is not printed to the
> beeline console
> ---------------------------------------------------------------------------------------------
>
> Key: HIVE-16061
> URL: https://issues.apache.org/jira/browse/HIVE-16061
> Project: Hive
> Issue Type: Bug
> Components: Logging
> Affects Versions: 2.1.1
> Reporter: Aihua Xu
> Assignee: Aihua Xu
> Attachments: HIVE-16061.1.patch, HIVE-16061.2.patch
>
>
> Run a hiveserver2 instance "hive --service hiveserver2".
> Then from another console, connect to hiveserver2 "beeline -u
> "jdbc:hive2://localhost:10000"
> When you run a MR job like "select t1.key from src t1 join src t2 on
> t1.key=t2.key", some of the console logs like MR job info are not printed to
> the console while it just print to the hiveserver2 console.
> When hive.async.log.enabled is set to false and restarts the HiveServer2,
> then the output will be printed to the beeline console.
> OperationLog implementation uses the ThreadLocal variable to store associated
> the log file. When the hive.async.log.enabled is set to true, the logs will
> be processed by a ThreadPool and the actual threads from the pool which
> prints the message won't be able to access the log file stored in the
> original thread.
--
This message was sent by Atlassian JIRA
(v6.3.15#6346)