Skip to content

Commit 1b98163

Browse files
committed
MAPREDUCE-7453. Container logs are missing when yarn.app.container.log.filesize is set to default value 0.
1 parent 512e39e commit 1b98163

File tree

6 files changed

+14
-12
lines changed

6 files changed

+14
-12
lines changed

hadoop-mapreduce-project/hadoop-mapreduce-client/hadoop-mapreduce-client-app/src/test/java/org/apache/hadoop/mapreduce/v2/app/job/impl/TestMapReduceChildJVM.java

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -64,7 +64,7 @@ public void testCommandLine() throws Exception {
6464
" -Xmx820m -Djava.io.tmpdir=" + MRApps.crossPlatformify("PWD") + "/tmp" +
6565
" -Dlog4j.configuration=container-log4j.properties" +
6666
" -Dyarn.app.container.log.dir=<LOG_DIR>" +
67-
" -Dyarn.app.container.log.filesize=0" +
67+
" -Dyarn.app.container.log.filesize=10240" +
6868
" -Dhadoop.root.logger=INFO,CLA -Dhadoop.root.logfile=syslog" +
6969
" org.apache.hadoop.mapred.YarnChild 127.0.0.1" +
7070
" 54321" +
@@ -127,7 +127,7 @@ private void testReduceCommandLine(Configuration conf)
127127
" -Xmx820m <ADD_OPENS> -Djava.io.tmpdir=" + MRApps.crossPlatformify("PWD") + "/tmp" +
128128
" -Dlog4j.configuration=container-log4j.properties" +
129129
" -Dyarn.app.container.log.dir=<LOG_DIR>" +
130-
" -Dyarn.app.container.log.filesize=0" +
130+
" -Dyarn.app.container.log.filesize=10240" +
131131
" -Dhadoop.root.logger=INFO,CLA -Dhadoop.root.logfile=syslog" +
132132
" -Dyarn.app.mapreduce.shuffle.logger=INFO," + appenderName +
133133
" -Dyarn.app.mapreduce.shuffle.logfile=syslog.shuffle" +
@@ -169,7 +169,7 @@ public void testCommandLineWithLog4JConifg() throws Exception {
169169
" -Xmx820m <ADD_OPENS> -Djava.io.tmpdir=" + MRApps.crossPlatformify("PWD") + "/tmp" +
170170
" -Dlog4j.configuration=" + testLogPropertieFile +
171171
" -Dyarn.app.container.log.dir=<LOG_DIR>" +
172-
" -Dyarn.app.container.log.filesize=0" +
172+
" -Dyarn.app.container.log.filesize=10240" +
173173
" -Dhadoop.root.logger=INFO,CLA -Dhadoop.root.logfile=syslog" +
174174
" org.apache.hadoop.mapred.YarnChild 127.0.0.1" +
175175
" 54321" +

hadoop-mapreduce-project/hadoop-mapreduce-client/hadoop-mapreduce-client-core/src/main/java/org/apache/hadoop/mapred/TaskLog.java

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -466,7 +466,8 @@ public static long getTaskLogLength(JobConf conf) {
466466
}
467467

468468
public static long getTaskLogLimitBytes(Configuration conf) {
469-
return conf.getLong(JobContext.TASK_USERLOG_LIMIT, 0) * 1024;
469+
return conf.getLong(JobContext.TASK_USERLOG_LIMIT, JobContext.DEFAULT_TASK_USERLOG_LIMIT) *
470+
1024;
470471
}
471472

472473

hadoop-mapreduce-project/hadoop-mapreduce-client/hadoop-mapreduce-client-core/src/main/java/org/apache/hadoop/mapreduce/MRJobConfig.java

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -410,6 +410,8 @@ public interface MRJobConfig {
410410

411411
public static final String TASK_USERLOG_LIMIT = "mapreduce.task.userlog.limit.kb";
412412

413+
public static final int DEFAULT_TASK_USERLOG_LIMIT = 10240;
414+
413415
public static final String MAP_SORT_SPILL_PERCENT = "mapreduce.map.sort.spill.percent";
414416

415417
public static final String MAP_INPUT_FILE = "mapreduce.map.input.file";
@@ -758,11 +760,11 @@ public interface MRJobConfig {
758760

759761
public static final String MR_AM_LOG_KB =
760762
MR_AM_PREFIX + "container.log.limit.kb";
761-
public static final int DEFAULT_MR_AM_LOG_KB = 0; // don't roll
763+
public static final int DEFAULT_MR_AM_LOG_KB = 10240;
762764

763765
public static final String MR_AM_LOG_BACKUPS =
764766
MR_AM_PREFIX + "container.log.backups";
765-
public static final int DEFAULT_MR_AM_LOG_BACKUPS = 0;
767+
public static final int DEFAULT_MR_AM_LOG_BACKUPS = 0; // don't roll
766768

767769
/**The number of splits when reporting progress in MR*/
768770
public static final String MR_AM_NUM_PROGRESS_SPLITS =

hadoop-mapreduce-project/hadoop-mapreduce-client/hadoop-mapreduce-client-core/src/main/resources/mapred-default.xml

Lines changed: 3 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -823,16 +823,15 @@
823823

824824
<property>
825825
<name>mapreduce.task.userlog.limit.kb</name>
826-
<value>0</value>
827-
<description>The maximum size of user-logs of each task in KB. 0 disables the cap.
826+
<value>10240</value>
827+
<description>The maximum size of user-logs of each task in KB.
828828
</description>
829829
</property>
830830

831831
<property>
832832
<name>yarn.app.mapreduce.am.container.log.limit.kb</name>
833-
<value>0</value>
833+
<value>10240</value>
834834
<description>The maximum size of the MRAppMaster attempt container logs in KB.
835-
0 disables the cap.
836835
</description>
837836
</property>
838837

hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-nodemanager/src/test/java/org/apache/hadoop/yarn/server/nodemanager/TestLinuxContainerExecutorWithMocks.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -323,7 +323,7 @@ public void testStartLocalizer() throws IOException {
323323
String.format("-Dyarn.app.container.log.dir=%s/application_0/12345",
324324
mockExec.getConf().get(YarnConfiguration.NM_LOG_DIRS)));
325325
assertThat(result.get(15)).isEqualTo(
326-
"-Dyarn.app.container.log.filesize=0");
326+
"-Dyarn.app.container.log.filesize=10240");
327327
assertThat(result.get(16)).isEqualTo("-Dhadoop.root.logger=INFO,CLA");
328328
assertThat(result.get(17)).isEqualTo(
329329
"-Dhadoop.root.logfile=container-localizer-syslog");

hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-nodemanager/src/test/java/org/apache/hadoop/yarn/server/nodemanager/containermanager/launcher/TestContainerLaunch.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -945,7 +945,7 @@ private void verifyTailErrorLogOnContainerExit(Configuration conf,
945945
invalidCommand.add("-Djava.io.tmpdir=$PWD/tmp");
946946
invalidCommand.add("-Dlog4j.configuration=container-log4j.properties");
947947
invalidCommand.add("-Dyarn.app.container.log.dir=" + containerLogDir);
948-
invalidCommand.add("-Dyarn.app.container.log.filesize=0");
948+
invalidCommand.add("-Dyarn.app.container.log.filesize=10240");
949949
invalidCommand.add("-Dhadoop.root.logger=INFO,CLA");
950950
invalidCommand.add("-Dhadoop.root.logfile=syslog");
951951
invalidCommand.add("-Xmx1024m");

0 commit comments

Comments
 (0)