You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@flink.apache.org by tr...@apache.org on 2018/01/12 22:25:33 UTC

[12/14] flink git commit: [FLINK-8201] [yarn] Delete temp configuration file after uploading it to HDFS

[FLINK-8201] [yarn] Delete temp configuration file after uploading it to HDFS

The Utils#createTaskExecutorContext method creates a temporary local configuration
file which it then uploads to HDFS. This fille should be removed after the upload
has completed.

This closes #5123.


Project: http://git-wip-us.apache.org/repos/asf/flink/repo
Commit: http://git-wip-us.apache.org/repos/asf/flink/commit/d0bc3000
Tree: http://git-wip-us.apache.org/repos/asf/flink/tree/d0bc3000
Diff: http://git-wip-us.apache.org/repos/asf/flink/diff/d0bc3000

Branch: refs/heads/master
Commit: d0bc300087b037b156425ccd509147177dd9529e
Parents: ed0716a
Author: wenlong.lwl <we...@alibaba-inc.com>
Authored: Tue Dec 5 15:54:39 2017 +0800
Committer: Till Rohrmann <tr...@apache.org>
Committed: Fri Jan 12 16:14:06 2018 +0100

----------------------------------------------------------------------
 .../main/java/org/apache/flink/yarn/Utils.java  | 32 +++++++++++++-------
 1 file changed, 21 insertions(+), 11 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/flink/blob/d0bc3000/flink-yarn/src/main/java/org/apache/flink/yarn/Utils.java
----------------------------------------------------------------------
diff --git a/flink-yarn/src/main/java/org/apache/flink/yarn/Utils.java b/flink-yarn/src/main/java/org/apache/flink/yarn/Utils.java
index 652afec..9ae5b54 100644
--- a/flink-yarn/src/main/java/org/apache/flink/yarn/Utils.java
+++ b/flink-yarn/src/main/java/org/apache/flink/yarn/Utils.java
@@ -23,6 +23,7 @@ import org.apache.flink.configuration.ResourceManagerOptions;
 import org.apache.flink.runtime.clusterframework.BootstrapTools;
 import org.apache.flink.runtime.clusterframework.ContaineredTaskManagerParameters;
 import org.apache.flink.runtime.util.HadoopUtils;
+import org.apache.flink.util.FileUtils;
 
 import org.apache.hadoop.conf.Configuration;
 import org.apache.hadoop.fs.FileStatus;
@@ -408,17 +409,26 @@ public final class Utils {
 			log.debug("Writing TaskManager configuration to {}", taskManagerConfigFile.getAbsolutePath());
 			BootstrapTools.writeConfiguration(taskManagerConfig, taskManagerConfigFile);
 
-			Path homeDirPath = new Path(clientHomeDir);
-			FileSystem fs = homeDirPath.getFileSystem(yarnConfig);
-
-			flinkConf = setupLocalResource(
-				fs,
-				appId,
-				new Path(taskManagerConfigFile.toURI()),
-				homeDirPath,
-				"").f1;
-
-			log.info("Prepared local resource for modified yaml: {}", flinkConf);
+			try {
+				Path homeDirPath = new Path(clientHomeDir);
+				FileSystem fs = homeDirPath.getFileSystem(yarnConfig);
+
+				flinkConf = setupLocalResource(
+					fs,
+					appId,
+					new Path(taskManagerConfigFile.toURI()),
+					homeDirPath,
+					"").f1;
+
+				log.info("Prepared local resource for modified yaml: {}", flinkConf);
+			} finally {
+				try {
+					FileUtils.deleteFileOrDirectory(taskManagerConfigFile);
+				} catch (IOException e) {
+					log.info("Could not delete temporary configuration file " +
+						taskManagerConfigFile.getAbsolutePath() + '.', e);
+				}
+			}
 		}
 
 		Map<String, LocalResource> taskManagerLocalResources = new HashMap<>();