Story #3707
Updated by bmbouter over 5 years ago
With the switch to RQ, the resource_manager became not-highly available. If you run two of them, bad things will happen.
We should make the resource_manager highly available again. there are two implementation options:
h3. 1. Use TaskLock again
Before the RQ transition we were using TaskLock: https://github.com/pulp/pulp/blob/968766e975c2eca00169470b8a028ec28c2a9274/pulpcore/pulpcore/app/models/task.py#L250-L280
This would be a PostgreSQL based table that only serves to elect a single master by one person writing the unique lock record.
h3. 2. Built something Redis based
This would be more something to contribute upstream to RQ.
h3. 3. Find something that we can wrap around the resource manager to provide a singleton function.