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

mon/OSDMonitor: remove zeroed new_state updates #16518

Merged
merged 2 commits into from Jul 24, 2017

Conversation

Projects
None yet
2 participants
@liewegas
Member

liewegas commented Jul 24, 2017

liewegas added some commits Jul 23, 2017

mon/OSDMonitor: remove zeroed new_state updates
These are interpreted as CEPH_OSD_UP in apply_incremental for legacy
reasons--we don't want them!

Fixes: http://tracker.ceph.com/issues/20751
Signed-off-by: Sage Weil <sage@redhat.com>
osd/OSDMap: fix Incremental::dump
Signed-off-by: Sage Weil <sage@redhat.com>

@liewegas liewegas modified the milestones: jewel, luminous Jul 24, 2017

@liewegas liewegas requested a review from tchaikov Jul 24, 2017

@@ -942,6 +942,18 @@ void OSDMonitor::encode_pending(MonitorDBStore::TransactionRef t)
}
mapping_job.reset();
// ensure we don't have blank new_state updates. these are interrpeted as
// CEPH_OSD_UP (and almost certainly not what we want!).

This comment has been minimized.

@tchaikov

tchaikov Jul 24, 2017

Contributor

i think, if new_state is 0, then it has no effect on the new osdmap after it is applied to the old one.

@tchaikov

i don't agree with what the comment puts, but the code change lgtm.

@liewegas

This comment has been minimized.

@liewegas liewegas merged commit f219d49 into ceph:master Jul 24, 2017

3 of 4 checks passed

make check make check failed
Details
Signed-off-by all commits in this PR are signed
Details
Unmodified Submodules submodules for project are unmodified
Details
make check (arm64) make check succeeded
Details

@liewegas liewegas deleted the liewegas:wip-20751 branch Jul 24, 2017

// CEPH_OSD_UP (and almost certainly not what we want!).
auto p = pending_inc.new_state.begin();
while (p != pending_inc.new_state.end()) {
if (p->second == 0) {

This comment has been minimized.

@tchaikov

tchaikov Jul 26, 2017

Contributor

@liewegas but how come can we add a 0 new_state mask? this happens only if we have a new 0 state mask in the incoming MOSDFull. the only case i can think of is #16581.

This comment has been minimized.

@liewegas

liewegas Jul 26, 2017

Member

Ah, yeah, that was probably it!

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