Project

Profile

Help

Refactor #2157

Updated by bmbouter over 7 years ago

pulp_resource_manager currently uses a mongodb collection with a uniqueness constraint to obtain a lock. Multiple processes attempt to insert a document, and the one who succeeds is the active process. 

 Given the lock model that has already been created in django, convert pulp_resource_manager to use it instead of the mongo model. 

 It's important to test that these locks are acquired and released as expected. Hand testing this by manually invoking two pulp_resource_managers and testing failover would be good. 

 NOTE: Work done with issue #2154 removed this codepath[0] from the 3.0-dev branch That codepath and any necessary supporting codepaths should be added to the signal in pulp.tasking.celery_app 

 [0]: https://github.com/pulp/pulp/blob/33ce8590f6112c2101930e23f0470c1883ef98a7/server/pulp/server/async/app.py#L84-L87

Back