Project

General

Profile

Actions

Bug #5896

closed

mon: MonmapMonitor: 'ceph mon add' always returns 'mon already exists'

Added by Joao Eduardo Luis over 10 years ago. Updated over 10 years ago.

Status:
Resolved
Priority:
High
Category:
Monitor
Target version:
-
% Done:

0%

Source:
Community (dev)
Tags:
Backport:
Regression:
Severity:
3 - minor
Reviewed:
Affected Versions:
ceph-qa-suite:
Pull request ID:
Crash signature (v1):
Crash signature (v2):

Description

on next (ceph version 0.67-rc3-100-ge8d72ef (e8d72ef0402a42c8aa8ea624497d13db81d5e361))

$ ceph mon dump
*** DEVELOPER MODE: setting PATH, PYTHONPATH and LD_LIBRARY_PATH ***
dumped monmap epoch 9
epoch 9
fsid d8b53103-f50e-4fed-84e9-c95f30b5b441
last_changed 2013-08-06 17:56:49.452341
created 2013-08-05 19:24:54.662265
0: 127.0.0.1:6789/0 mon.a
1: 127.0.0.1:6790/0 mon.b
2: 127.0.0.1:6791/0 mon.c

$ ceph mon add foo 127.0.0.1:6795
*** DEVELOPER MODE: setting PATH, PYTHONPATH and LD_LIBRARY_PATH ***
Error EEXIST: mon foo 127.0.0.1:6795/0 already exists

What the bug is:

- MonmapMonitor::handle_command() will add update the pending inc with the new mon, and queue the reply to the client on wait_for_finished_proposal().
- Monitor bootstraps due to updated monmap before waking up waiters on waiting_for_finished_proposal.
- all waiters on waiting_for_finished_proposal are retried with EAGAIN
Command is retried instead of replying to the client -> monitor already exists.

Actions #1

Updated by Joao Eduardo Luis over 10 years ago

  • Description updated (diff)
Actions #2

Updated by Sage Weil over 10 years ago

  • Priority changed from Normal to High
Actions #3

Updated by Joao Eduardo Luis over 10 years ago

I thought I had fixed this. I'll check.

Actions #4

Updated by Joao Eduardo Luis over 10 years ago

  • Status changed from New to Fix Under Review

wip-5896, pull request 557

Actions #5

Updated by Sage Weil over 10 years ago

  • Status changed from Fix Under Review to Resolved
Actions

Also available in: Atom PDF