apache/dolphinscheduler · error · FileNotFoundException
Source path does not exist: ${srcAbsolutePath}
Error message
Source path does not exist: ${srcAbsolutePath} What it means
A precondition in copy(): exists(srcAbsolutePath) returned false, so there is nothing to copy — the source file or directory is missing on local storage. The offending input is srcAbsolutePath; typical causes are a deleted/moved resource, a stale resource record pointing at a removed file, or copy being invoked before upload completed.
Source
Thrown at dolphinscheduler-storage-plugin/dolphinscheduler-storage-api/src/main/java/org/apache/dolphinscheduler/plugin/storage/api/local/LocalStorageOperator.java:98
@Override
public void delete(String resourceAbsolutePath, boolean recursive) {
if (recursive) {
FileUtils.deleteQuietly(new File(resourceAbsolutePath));
} else {
Files.deleteIfExists(Paths.get(resourceAbsolutePath));
}
}
@SneakyThrows
@Override
public void copy(String srcAbsolutePath, String dstAbsolutePath, boolean deleteSource, boolean overwrite) {
if (srcAbsolutePath.equals(dstAbsolutePath)) {
throw new IllegalArgumentException(
"Source path and destination path cannot be the same: " + srcAbsolutePath);
}
if (!exists(srcAbsolutePath)) {
throw new FileNotFoundException("Source path does not exist: " + srcAbsolutePath);
}
if (exists(dstAbsolutePath)) {
if (!overwrite) {
throw new FileAlreadyExistsException("Destination path already exists: " + dstAbsolutePath);
}
delete(dstAbsolutePath, true);
}
final File srcFile = new File(srcAbsolutePath);
final File dstFile = new File(dstAbsolutePath);
if (FileUtils.isDirectory(srcFile)) {
FileUtils.copyDirectoryToDirectory(srcFile, dstFile);
} else {
FileUtils.copyFile(srcFile, dstFile);
}
if (deleteSource) {
delete(srcAbsolutePath, true);View on GitHub (pinned to 02eac45a1b)
Solutions
- Verify the source path exists and the resource record is up to date before issuing copy/move
- Re-upload the source resource if it was deleted
- Guard UI rename/move operations with an existence check to give the user a clear error
Defensive patterns
Strategy: validation
When it happens
Trigger: Thrown at dolphinscheduler-storage-plugin/dolphinscheduler-storage-api/src/main/java/org/apache/dolphinscheduler/plugin/storage/api/local/LocalStorageOperator.java:98 when the library encounters an invalid state.
Common situations: See trigger scenarios.
AI-assisted analysis of apache/dolphinscheduler@02eac45a1b (2026-09-06).
Data as JSON: /api/errors/0fdf9835ed1977e6.
Report an issue: GitHub.