Project

Profile

Help

Task #2527

Updated by bmbouter over 7 years ago

h3. Problem 

 python-celery was recently upgrade from 3.1.20-3 to 4.0.2-1 on Fedora rawhide [0]. Celery 4 has some backwards incompatible changes that affect Pulp's usage of celery. This means that until we update Pulp 2.y to work with Celery 4.0.z Pulp will not be able to work with rawhide (and F26). There are at least 2 problems, but there may be more. 

 * Tasks with reservation won't work because the the dedicated queue name was changed from C.dq (celery 3.1.z) to C.dq2 (celery 4.0). That variable is "set here":https://github.com/pulp/pulp/blob/91a1e28c9e7d3dee418d5c7680dbf25c3e7adc63/server/pulp/server/async/celery_instance.py#L23. 
 * A undocumented API change that @dalley discovered and fixed along Tasks are no longer lost upon worker restart. This opens the way 
 * The conversion of the two tasks in Comment 11 which door for us to fix #489 with Pulp3, but for 2.y (this issue) we need to be converted from @classmethod perform regression testing regarding task cancellation. Note that we cannot fix #489 on Pulp2 unless all distributions were to @staticmethod switch to work with both Celery 3.1 and Celery4. celery 4 which is not in the plan currently. 

 h3. Solution 

 Pulp3 already works with celery 4.0.z, however it is unlikely to make the F26 beta freeze date of 4-28. 4-25. So in the interim we need to update pulp2 to work with python-celery 4.0.z It also has to maintain compatibility with python-celery 3.1.z which will continue to be used on EL7, and F25-. 

 [0] https://apps.fedoraproject.org/packages/python-celery

Back