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: collect mon metdata as part of the election #16148

Merged
merged 3 commits into from Jul 7, 2017

Conversation

Projects
None yet
3 participants
@liewegas
Member

liewegas commented Jul 6, 2017

@liewegas liewegas requested a review from jecluis Jul 6, 2017

::decode(last_metadata, iter);
pending_metadata.insert(last_metadata.begin(), last_metadata.end());
}
pending_metadata[from] = std::move(m);
MonitorDBStore::TransactionRef t = paxos->get_pending_transaction();
bl.clear();

This comment has been minimized.

@LiumxNL

LiumxNL Jul 6, 2017

Contributor

bl not declared

@liewegas liewegas modified the milestone: luminous Jul 6, 2017

@liewegas

This comment has been minimized.

Member

liewegas commented Jul 6, 2017

fixed build and repushed

@liewegas

This comment has been minimized.

Member

liewegas commented Jul 6, 2017

build is fixed, test commit removed... ready for review and test!

@tchaikov tchaikov self-requested a review Jul 7, 2017

@liewegas

This comment has been minimized.

Member

liewegas commented Jul 7, 2017

retest this please

@liewegas

This comment has been minimized.

@jecluis

jecluis approved these changes Jul 7, 2017

lgtm

::decode(defunct_one, p);
::decode(defunct_two, p);
{
version_t v;

This comment has been minimized.

@jecluis

jecluis Jul 7, 2017

Member

mind adding a // defunct or something to this block? while I'm totally okay with getting rid of those class variables, we're losing the verbosity they conveyed ;)

liewegas added some commits Jul 5, 2017

mon: use single collect_metadata helper, consistently set 'addr'
Signed-off-by: Sage Weil <sage@redhat.com>
mon: keep mon metadata in ram
Signed-off-by: Sage Weil <sage@redhat.com>
mon: collect mon metadata as part of election
Previously each peon would send a message to teh leader with its metadata
immediately after the election was won.  However, at that point paxos
usually wasn't writeable, which meant the old update_mon_metadata() method
didn't persist reliably, updates would race, and generally speaking
metadata wasn't reliably updated.

Fix this by including metadata as part of the election ack, and persisting
the whole quorum when the election is won.  This ensures it is up to date.

Fixes: http://tracker.ceph.com/issues/20434
Signed-off-by: Sage Weil <sage@redhat.com>

@liewegas liewegas merged commit 8b5640d into ceph:master Jul 7, 2017

1 of 4 checks passed

Unmodified Submodules checking if PR has modified submodules
Details
make check running make check
Details
make check (arm64) running make check
Details
Signed-off-by all commits in this PR are signed
Details

@liewegas liewegas deleted the liewegas:wip-20434 branch Jul 7, 2017

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