Browse Source

added changes to enable grow and shrink pool to work

Dan 11 years ago
parent
commit
1220bc7f65
1 changed files with 4 additions and 0 deletions
  1. 4 0
      celery/worker/control.py

+ 4 - 0
celery/worker/control.py

@@ -283,6 +283,8 @@ def pool_grow(state, n=1, **kwargs):
         state.consumer.controller.autoscaler.force_scale_up(n)
         state.consumer.controller.autoscaler.force_scale_up(n)
     else:
     else:
         state.consumer.pool.grow(n)
         state.consumer.pool.grow(n)
+    state.consumer.qos.increment_eventually(n)
+    state.consumer.initial_prefetch_count = n
     return {'ok': 'spawned worker processes'}
     return {'ok': 'spawned worker processes'}
 
 
 
 
@@ -292,6 +294,8 @@ def pool_shrink(state, n=1, **kwargs):
         state.consumer.controller.autoscaler.force_scale_down(n)
         state.consumer.controller.autoscaler.force_scale_down(n)
     else:
     else:
         state.consumer.pool.shrink(n)
         state.consumer.pool.shrink(n)
+    state.consumer.qos.decrement_eventually(n)
+    state.consumer.initial_prefetch_count = n
     return {'ok': 'terminated worker processes'}
     return {'ok': 'terminated worker processes'}