Export partition - Introduce commit lock#1847
Conversation
|
No new fails in PR. AI audit returned "No blockers or majors." Existing export partition regression test coverage is adequate. LGTM |
|
@arthurpassos I am definitely not the best person to review this, but some questions/suggestions
|
|
|
Approach looks solid However, One thing before merge: (Minor: failed-acquire |
commit path won't remove the entry, it will just set |
hm... maybe I do need to refactor all my logging from log_inffo to log_debug. Can I do it in a separate pr? it is a big change. |
Note for the reviewer:
Normally, an export task is comitted by the thread that uploads the last part. At the same time, there is a cleanup thread that runs periodically that might try to commit tasks that are marked as PENDING and already uploaded all parts. Those tasks are considered to be in commit state, and if this happens, there may be a race condition.
Introducing a commit lock to prevent that from happening
Changelog category (leave one):
Changelog entry (a user-readable short description of the changes that goes to CHANGELOG.md):
Prevent commit race conditions by adding a per-task
commit_lockDocumentation entry for user-facing changes
...
CI/CD Options
Exclude tests:
Regression jobs to run: