Runtime size changes #26

Open
reiddraper opened this Issue Apr 2, 2013 · 3 comments

Comments

Projects
None yet
3 participants
@reiddraper

It would be nice to be able to change the size and max_overflow parameters at runtime. This would be useful for situations where you have long-running processes that it would be inconvenient to be interrupted by a node reboot. I suspect, however, that this change would be more complicated than a simple:

update_size(PoolPid, Size, MaxOverflow) ->
  gen_server:call(PoolPid, {update_state, {Size, MaxOverflow}}).

handle_call({update_state, _From, {Size, MaxOverflow}}, State) ->
  UpdatedState = State#state{size=Size, max_overflow=MaxOverFlow},  
  {reply, ok, UpdatedState}.

but I could be over-thinking it. I'm wondering about issues like: what happens if you shrink the pool size, do you kill workers? Just wait for them to be returned to the pool and then gracefully dismiss them? What happens if you raise the base pool size, do you pre-populate again?

Thoughts?

@reiddraper reiddraper referenced this issue in basho/riak_cs Apr 9, 2013

Merged

Gracefully handle Riak disconnects #519

@devinus

This comment has been minimized.

Show comment
Hide comment
@devinus

devinus Apr 10, 2013

Owner

This actually wouldn't be hard at all. If it was coded right it would just begin scaling to new parameters. However, reducing the pool size should NOT kill off workers.

Owner

devinus commented Apr 10, 2013

This actually wouldn't be hard at all. If it was coded right it would just begin scaling to new parameters. However, reducing the pool size should NOT kill off workers.

@reiddraper

This comment has been minimized.

Show comment
Hide comment
@reiddraper

reiddraper Apr 10, 2013

Cool, I have a half-started branch that implements this. I'll finish it up and make a PR in the next week or so.

Cool, I have a half-started branch that implements this. I'll finish it up and make a PR in the next week or so.

@devinus devinus added the enhancement label Feb 10, 2014

@TurplePurtle

This comment has been minimized.

Show comment
Hide comment
@TurplePurtle

TurplePurtle Feb 2, 2016

Any updates on this?

Any updates on this?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment