YARN-4581. AHS writer thread leak makes RM crash while RM is recovering. Contributed by sandflee.

This commit is contained in:
Junping Du 2016-01-15 08:40:56 -08:00
parent f7736f464f
commit fc6d3a3b23
2 changed files with 20 additions and 6 deletions

View File

@ -1259,6 +1259,9 @@ Release 2.8.0 - UNRELEASED
failure-threshold" should be app specific rather than a setting for whole failure-threshold" should be app specific rather than a setting for whole
YARN cluster. (Sunil G via rohithsharmaks) YARN cluster. (Sunil G via rohithsharmaks)
YARN-4581. AHS writer thread leak makes RM crash while RM is recovering.
(sandflee via junping_du)
Release 2.7.3 - UNRELEASED Release 2.7.3 - UNRELEASED
INCOMPATIBLE CHANGES INCOMPATIBLE CHANGES
@ -1323,6 +1326,9 @@ Release 2.7.3 - UNRELEASED
YARN-4414. Nodemanager connection errors are retried at multiple levels YARN-4414. Nodemanager connection errors are retried at multiple levels
(Chang Li via jlowe) (Chang Li via jlowe)
YARN-4581. AHS writer thread leak makes RM crash while RM is recovering.
(sandflee via junping_du)
Release 2.7.2 - UNRELEASED Release 2.7.2 - UNRELEASED
INCOMPATIBLE CHANGES INCOMPATIBLE CHANGES
@ -2209,6 +2215,9 @@ Release 2.6.4 - UNRELEASED
YARN-4414. Nodemanager connection errors are retried at multiple levels YARN-4414. Nodemanager connection errors are retried at multiple levels
(Chang Li via jlowe) (Chang Li via jlowe)
YARN-4581. AHS writer thread leak makes RM crash while RM is recovering.
(sandflee via junping_du)
Release 2.6.3 - 2015-12-17 Release 2.6.3 - 2015-12-17
INCOMPATIBLE CHANGES INCOMPATIBLE CHANGES

View File

@ -734,12 +734,17 @@ public class FileSystemApplicationHistoryStore extends AbstractService
} else { } else {
fsdos = fs.create(historyFile); fsdos = fs.create(historyFile);
} }
try {
fs.setPermission(historyFile, HISTORY_FILE_UMASK); fs.setPermission(historyFile, HISTORY_FILE_UMASK);
writer = writer =
new TFile.Writer(fsdos, MIN_BLOCK_SIZE, getConfig().get( new TFile.Writer(fsdos, MIN_BLOCK_SIZE, getConfig().get(
YarnConfiguration.FS_APPLICATION_HISTORY_STORE_COMPRESSION_TYPE, YarnConfiguration.FS_APPLICATION_HISTORY_STORE_COMPRESSION_TYPE,
YarnConfiguration.DEFAULT_FS_APPLICATION_HISTORY_STORE_COMPRESSION_TYPE), null, YarnConfiguration.DEFAULT_FS_APPLICATION_HISTORY_STORE_COMPRESSION_TYPE), null,
getConfig()); getConfig());
} catch (IOException e) {
IOUtils.cleanup(LOG, fsdos);
throw e;
}
} }
public synchronized void close() { public synchronized void close() {