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

osd: erasure-code-profile set races with erasure-code-profile rm #4383

Merged
1 commit merged into from Apr 27, 2015

Conversation

Projects
None yet
2 participants
@xinxinsh
Member

xinxinsh commented Apr 17, 2015

osd: erasure-code-profile incremental rm before set
It is possible for an incremental change to have both a rm and a set for
a given erasure code profile. It only happens when a rm is followed by a
set. When a set is followed by a rm, the rm will remove the pending set
in the incremental change.

The logic is the same for pool create and pool delete.

We must apply the incremental erasure-code-profile removal before the
creation otherwise rm and set in the same proposal will ignore the set.

This fix is minimal. A better change would be that erasure-code-profile
set checks if there is a pending removal and wait_for_finished_proposal
before creating.

http://tracker.ceph.com/issues/11144 Fixes: #11144

Signed-off-by: Loic Dachary <ldachary@redhat.com>
(cherry picked from commit 0d52aca)

Conflicts:
	src/osd/OSDMap.cc
        resolved by replacing i++ with ++i

@ghost ghost added bug fix core labels Apr 17, 2015

@ghost ghost added this to the firefly milestone Apr 17, 2015

@ghost ghost assigned xinxinsh Apr 17, 2015

ghost pushed a commit that referenced this pull request Apr 27, 2015

Loic Dachary
Merge pull request #4383 from xinxinsh/wip-11144-firefly
erasure-code-profile set races with erasure-code-profile rm

Reviewed-by: Loic Dachary <ldachary@redhat.com>

@ghost ghost merged commit 51ff2b6 into ceph:firefly Apr 27, 2015

@ghost ghost changed the title from erasure-code-profile set races with erasure-code-profile rm to osd: erasure-code-profile set races with erasure-code-profile rm Jul 14, 2015

This issue was closed.

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