Victor Wong created FLINK-16376:
-----------------------------------
Summary: Using consistent method to get Yarn application directory
Key: FLINK-16376
URL:
https://issues.apache.org/jira/browse/FLINK-16376 Project: Flink
Issue Type: Improvement
Components: Deployment / YARN
Affects Versions: 1.10.0
Reporter: Victor Wong
The Yarn application directory of Flink is "/user/{user.name}/.flink", but this logic is separated in different places.
1. org.apache.flink.yarn.YarnClusterDescriptor#getYarnFilesDir
{code:java}
private Path getYarnFilesDir(final ApplicationId appId) throws IOException {
final FileSystem fileSystem = FileSystem.get(yarnConfiguration);
final Path homeDir = fileSystem.getHomeDirectory();
return *new Path(homeDir, ".flink/" + appId + '/');*
}
{code}
2. org.apache.flink.yarn.Utils#uploadLocalFileToRemote
{code:java}
// copy resource to HDFS
String suffix =
*".flink/"*
*+ appId*
+ (relativeTargetPath.isEmpty() ? "" : "/" + relativeTargetPath)
+ "/" + localSrcPath.getName();
Path dst = new Path(homedir, suffix);
{code}
We can extract `getYarnFilesDir` method to `org.apache.flink.yarn.Utils`, and use this method to get Yarn application directory in all the other places.
--
This message was sent by Atlassian Jira
(v8.3.4#803005)