[ https://issues.apache.org/jira/browse/FLINK-9707?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16532289#comment-16532289
]
ASF GitHub Bot commented on FLINK-9707:
---------------------------------------
Github user tillrohrmann commented on a diff in the pull request:
https://github.com/apache/flink/pull/6243#discussion_r200015421
--- Diff: flink-core/src/main/java/org/apache/flink/core/fs/local/LocalFileSystem.java
---
@@ -254,7 +254,7 @@ else if (file.exists() && !file.isDirectory()) {
}
else {
File parent = file.getParentFile();
- return (parent == null || mkdirsInternal(parent)) && file.mkdir();
+ return (parent == null || mkdirsInternal(parent)) && (file.mkdir() || file.isDirectory());
--- End diff --
The case we want to guard against is that another process created the directory `file`
just before calling `file.mkdir`. In this case, `file.mkdir` would return `false`. Therefore,
we need to check whether the created `file` is really a directory. If this is the case, then
we should return `true` because the directory was created.
> LocalFileSystem does not support concurrent directory creations
> ---------------------------------------------------------------
>
> Key: FLINK-9707
> URL: https://issues.apache.org/jira/browse/FLINK-9707
> Project: Flink
> Issue Type: Improvement
> Components: FileSystem
> Affects Versions: 1.5.0, 1.6.0
> Reporter: Till Rohrmann
> Assignee: Till Rohrmann
> Priority: Blocker
> Labels: pull-request-available
> Fix For: 1.6.0, 1.5.1
>
>
> The {{LocalFileSystem}} does not support concurrent directory creations. The consequence
is that file system operations fail.
> I think the culprit is the following line: https://github.com/apache/flink/blob/master/flink-core/src/main/java/org/apache/flink/core/fs/local/LocalFileSystem.java#L257
--
This message was sent by Atlassian JIRA
(v7.6.3#76005)
|