v1.1.0: Improved file locking handling for eDNC transfers

- Wait for file to stabilize (size stops changing) before processing
- Exponential backoff retry: 500ms -> 1s -> 2s -> up to 16s
- Up to 10 retry attempts (was 3)
- Debouncing to prevent duplicate processing of same file
- Use exclusive file lock during read/write for atomic operations
- Track failed file count in session summary

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
This commit is contained in:
cproudlock
2025-12-12 08:33:29 -05:00
parent dc80aceafb
commit dbcff19b27
2 changed files with 110 additions and 17 deletions

View File

@@ -111,18 +111,25 @@ Watching for files... Press Ctrl+C to stop
### "Watch folder does not exist"
Create the folder or specify a different path with `-WatchFolder`.
### "File locked" errors
The script retries up to 3 times if a file is locked. If errors persist, the file may be in use by another application.
### "File locked" errors (v1.0.0)
If using v1.0.0, update to v1.1.0 for improved file locking handling with exponential backoff and stability checks.
### Script doesn't detect files
- Verify the file extension matches `-FileFilter`
- Check that `-IncludeSubfolders` is set correctly
- Ensure the script has permissions to the folder
### "[WAIT] File still being written..."
This is normal behavior. The script waits for the file size to stabilize before processing, which means eDNC is still transferring the file. The script will automatically process it once the transfer completes.
### "[RETRY] File locked..."
The script uses exponential backoff (500ms → 1s → 2s → 4s → up to 16s) for up to 10 attempts. If you see `[FAILED]` messages, eDNC may be holding the file longer than expected.
## Version History
| Version | Date | Changes |
|---------|------|---------|
| 1.1.0 | 2025-12-12 | Improved file locking: stability check, exponential backoff, debouncing |
| 1.0.0 | 2025-12-12 | Initial release |
## Author