Ensure that only one process can be applying a recipe at a time

Created on 15 November 2023, 8 months ago
Updated 30 April 2024, 2 months ago

Problem/Motivation

This is spun off from #3390919-11: Create a config storage backend that can set "checkpoints", recording the changes to config that happen in between them β†’ , where @alexpott observed that we should only be allowing one process at a time to apply a recipe. That makes sense; if several recipes can be applied simultaneously, well...that's asking for big, big trouble.

Proposed resolution

Use a locking mechanism of some sort to ensure that recipes cannot be applied in parallel. This is probably going to be core's standard locking system, similar to what the cron system uses. (You can't run cron while it's running.)

Remaining tasks

Choose some solution (let's try using a regular cron-style lock first) and implement it with tests.

User interface changes

Shouldn't be any.

API changes

Maybe a new exception? Unclear as yet.

Data model changes

None expected.

✨ Feature request
Status

Needs work

Version

11.0

Component

Code

Created by

πŸ‡ΊπŸ‡ΈUnited States phenaproxima Massachusetts

Live updates comments and jobs are added and updated live.
Sign in to follow issues

Comments & Activities

Production build 0.69.0 2024