atlassian / atlassian/nucleus

Be resilient to file store errors

Open
#36 1 comment 0 reactions 0 assignees View on GitHub
enhancement
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

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.