Be resilient to file store errors
- Dominant language
- TypeScript
- Stars
- 420
- Forks
- 100
- PR merge metrics
- No merged PRs in 30d
Description
Currently if an unhandled error occurs while transferring files from a TemporaryFile to a released File the operation is aborted but not cleaned up. This means the temporary file remains in the files store but the database entry has been removed.
* [ ] Revert all DB modifications if any file store operation fails
* [ ] Ensure file store deletions are the final operation to occur in any request and exclude them from the reversion logic ^^
* [ ] Explore making file store changes transactional and also reversible (don't believe this is possible without storing everything in memory)
Contributor guide
No contributing guide indexed for this repository
Research direction
No files or tests are named. Start by tracing the TemporaryFile-to-released-File transfer and the associated database modifications, then inspect file-store operations and request cleanup ordering. Done means failed file-store operations revert database changes and deletions occur last without being reverted.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- electron, typescript
- Domain
- backend, database
- Issue type
- Bug
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 35/100