OpenDroneMap / OpenDroneMap/NodeODM
EPERM: operation not permitted, rename 'C:\WebODM\...\tmp\<uuid>' -> 'C:\WebODM\...\data\<uuid>\images'
Nobody has claimed this yet.
- Dominant language
- JavaScript
- Stars
- 301
- Forks
- 176
- Avg merge
- 1d 2h
- Merged PRs (30d)
- 1
Description
Hi team,
I am reaching out because I am consistently hitting a wall with the EPERM: operation not permitted, rename error on WebODM Native for Windows. I have exhausted all standard troubleshooting steps, and the issue persists even after moving the entire installation to the C: drive.
System Specs:
OS: Windows 10/11
Installation: WebODM Native (SuperBuild)
Hardware: High-performance machine (NVMe SSD, high RAM, multi-core CPU).
The Error:
EPERM: operation not permitted, rename 'C:\WebODM...\tmp<uuid>' -> 'C:\WebODM...\data<uuid>\images'
What I have already tried:
Antivirus/Defender: Added full exclusions for the C:\WebODM folder and for processes node.exe, python.exe, mvs.exe, and sfm.exe.
Permissions: Took full ownership of the WebODM directory and applied recursive "Full Control" permissions to all child objects.
Read-Only Attribute: Verified and removed the "Read-Only" attribute from the images and the WebODM root folder using attrib -r.
Drive Migration: Moved the installation from a secondary D: drive to the primary C: drive to avoid NTFS inheritance issues on secondary volumes.
Clean Environment: I ensure no File Explorer windows or cloud sync services (OneDrive) are active during processing. I also perform a deep clean of the tmp folder and kill all ghost processes between attempts.
Observation:
Since this is a high-performance machine, it seems the fs.rename operation in NodeODM is firing before the Windows kernel has fully released the file handles from the previous processing step (OpenMVS/OpenSfM).
Is there a way to implement a "retry" logic or a small delay in NodeODM's rename function for the Windows Native version? Any guidance on how to bypass this kernel-level lock would be greatly appreciated. I can no longer complete projects due to this intermittent but frequent failure.
Thank you.
EPERM: operation not permitted, rename 'C:\WebODM\resources\app\apps\NodeODM\tmp\ae23a508-198f-475e-8e0b-a3244645bda3' -> 'C:\WebODM\resources\app\apps\NodeODM\data\ae23a508-198f-475e-8e0b-a3244645bda3\images'
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Start by locating NodeODM's fs.rename call involved in moving the temporary processing directory into the data directory, then inspect how OpenMVS and OpenSfM completion is handled on Windows. Reproduce the failure with a Windows Native processing job and verify that the image directory move completes reliably after the change.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- javascript, node.js
- Domain
- api, backend, operating-systems
- Issue type
- Bug
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 35/100