Hello, I am experiencing strange errors related to code that tries to ensure a directory is there:
dir = dirname(dest) if isfile(dir) warn("Directory is file: ", dir) continue else mkpath(dir) end However, while running this script parallel on a cluster, I regularly get the error: ERROR: LoadError: SystemError: mkdir: File exists in mkdir at file.jl:42 in mkpath at file.jl:50 [inlined code] from /home/... Maybe it is NFS that is caching too aggressively, or lying about the existence of concurrently created directories. I don't know. Would there be a way to make `mkpath()` behave more atomically? At the moment I have to replace the `mkpath()` above with `ensuredir()` below: function ensuredir(d::AbstractString) if !isdir(d) try mkpath(d) catch e isdir(d) || throw(e) end end end Thanks, ---david P.S. (If this is a re-post, I didn't loose the original in the end in google somewhat buggy groups interface...)