zhihai xu created YARN-3925:
-------------------------------
Summary: ContainerLogsUtils#getContainerLogFile fails to read
container log files from full disks.
Key: YARN-3925
URL: https://issues.apache.org/jira/browse/YARN-3925
Project: Hadoop YARN
Issue Type: Bug
Components: nodemanager
Affects Versions: 2.7.1
Reporter: zhihai xu
Assignee: zhihai xu
Priority: Critical
ContainerLogsUtils#getContainerLogFile fails to read files from full disks.
{{getContainerLogFile}} depends on {{LocalDirsHandlerService#getLogPathToRead}}
to get the log file, but {{LocalDirsHandlerService#getLogPathToRead}} calls
{{logDirsAllocator.getLocalPathToRead}} and {{logDirsAllocator}} uses
configuration {{YarnConfiguration.NM_LOG_DIRS}}, which will be updated to not
include full disks in {{LocalDirsHandlerService#checkDirs}}:
{code}
Configuration conf = getConfig();
List<String> localDirs = getLocalDirs();
conf.setStrings(YarnConfiguration.NM_LOCAL_DIRS,
localDirs.toArray(new String[localDirs.size()]));
List<String> logDirs = getLogDirs();
conf.setStrings(YarnConfiguration.NM_LOG_DIRS,
logDirs.toArray(new String[logDirs.size()]));
{code}
ContainerLogsUtils#getContainerLogFile is used by NMWebServices#getLogs and
ContainerLogsPage.ContainersLogsBlock#render to read the log.
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)