Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Make ring resizing work with riak_ensemble [JIRA: RIAK-1652] #900

Open
jtuple opened this issue Apr 11, 2014 · 6 comments
Open

Make ring resizing work with riak_ensemble [JIRA: RIAK-1652] #900

jtuple opened this issue Apr 11, 2014 · 6 comments

Comments

@jtuple
Copy link
Contributor

jtuple commented Apr 11, 2014

Currently, riak_ensemble does not support deleting ensembles -- only creating them. We should add support for deleting ensembles to riak_ensemble, as well as update riak_kv_ensembles and riak_kv_ensemble_backend to delete ensembles if the ring size shrinks. Without this change, a cluster using strong consistency will break if dynamic ring resizing is used to shrink the ring. On the other hand, growing the ring should be safe -- although, we should test this.

We either need to fix this before shipping 2.0, or decide to not support ring resizing for strongly consistent clusters until a later release.

/cc basho/riak#536

@jonmeredith
Copy link
Contributor

Any idea on how much work? May have to punt on this post-2.0.

@jrwest
Copy link
Contributor

jrwest commented Apr 21, 2014

i vote punt. yokozuna doesn't support either.

@jtuple jtuple modified the milestones: 2.1, 2.0-RC May 12, 2014
@jtuple
Copy link
Contributor Author

jtuple commented May 12, 2014

Punted to 2.1

@randysecrist
Copy link

What are the implications of the break? How will this impact customers who grow and shrink clusters on a regular basis?

@reiddraper
Copy link
Contributor

@randysecrist

How will this impact customers who grow and shrink clusters on a regular basis?

This doesn't affecting shrinking and growing a cluster by adding/removing nodes. Just changing ring size, which is still an experimental feature, afaik.

@nickelization
Copy link
Contributor

Just commenting to note that this is still an issue in the latest code. I discovered this problem completely by accident when I noticed extremely high CPU usage coming from riak_ensemble on my dev setup. Long story short, it turned out that I had previously been running at a larger ring size, and hadn't cleared out the ensemble data when I wiped my cluster data. So it continued trying to start ensembles for non-existent vnodes, which ended up getting stuck in loops of continuously trying to monitor a vnode process and then getting the {'DOWN',...} message and starting over again.

@Basho-JIRA Basho-JIRA changed the title Make ring resizing work with riak_ensemble Make ring resizing work with riak_ensemble [JIRA: RIAK-1652] Mar 25, 2015
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

7 participants