Project

General

Profile

Bug #6322

mon: osdmon: write 'latest_full' after rebuilding full version from incrementals on update_from_paxos()

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

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

0%

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

Related issues

Related to Ceph - Bug #6442: mon: crush_ops.sh, test.py failures on master Resolved 09/29/2013

Associated revisions

Revision 81983bab (diff)
Added by Joao Eduardo Luis over 9 years ago

mon: OSDMonitor: update latest_full while rebuilding full maps

Not doing so will make the monitor rebuild the osdmap full versions, even
though they may have been rebuilt before, every time the monitor starts.

This mostly happens when the cluster is left in an unhealthy state for
a long period of time and incremental versions build up. Even though we
build the full maps on update_from_paxos(), not updating 'full_latest'
leads to the situation initially described.

Fixes: #6322

Signed-off-by: Joao Eduardo Luis <>

Revision da42355a
Added by Sage Weil over 9 years ago

Merge pull request #599 from ceph/wip-6323

mon: OSDMonitor: fix #6322 and #6323

Reviewed-by: Greg Farnum <>

Revision 65bbcaf4 (diff)
Added by Joao Eduardo Luis over 9 years ago

mon: OSDMonitor: update latest_full while rebuilding full maps

Not doing so will make the monitor rebuild the osdmap full versions, even
though they may have been rebuilt before, every time the monitor starts.

This mostly happens when the cluster is left in an unhealthy state for
a long period of time and incremental versions build up. Even though we
build the full maps on update_from_paxos(), not updating 'full_latest'
leads to the situation initially described.

Fixes: #6322

Signed-off-by: Joao Eduardo Luis <>
(cherry picked from commit 81983bab3630520d6c7ee9b7e4a747bc17b8c5c3)

History

#1 Updated by Joao Eduardo Luis over 9 years ago

  • Subject changed from mon: to mon: osdmon: write 'latest_full' after rebuilding full version from incrementals on update_from_paxos()
  • Category set to Monitor
  • Assignee set to Joao Eduardo Luis
  • Priority changed from Normal to Urgent
  • Source changed from other to Development

Given monitor on dumpling has

fc: 505 ; lc: 168872; latest_full: 505 ; diff: 168367

This leads to a significant amount of time spent on start rebuilding all those versions each time the monitor is restarted.
Currently we will only update the latest full version record (a "pointer" pointing to the latest full) on trim, which is a problem on an unhealthy cluster (once again, because we will rebuild all those full versions on start, despite they already exist).

#2 Updated by Joao Eduardo Luis over 9 years ago

  • Status changed from New to 7

#3 Updated by Joao Eduardo Luis over 9 years ago

  • Status changed from 7 to Fix Under Review

#4 Updated by Sage Weil over 9 years ago

  • Status changed from Fix Under Review to Pending Backport

#5 Updated by Sage Weil over 9 years ago

  • Status changed from Pending Backport to Resolved

Also available in: Atom PDF