Project

General

Profile

Bug #14822

Journal replay needs to support replaying successful maintenance ops

Added by Jason Dillaman about 3 years ago. Updated about 3 years ago.

Status:
Resolved
Priority:
Normal
Target version:
-
Start date:
02/19/2016
Due date:
% Done:

0%

Source:
other
Tags:
Backport:
Regression:
No
Severity:
3 - minor
Reviewed:
Affected Versions:
ceph-qa-suite:
Pull request ID:

Description

For example:
journal snap create start
snap create
journal snap create finish
<crash>

-- on replay --
snap create
  • ERROR: snap already exists

Similarly, if we are missing the finish op event, we still need to re-apply the op to avoid an inconsistent state.

Associated revisions

Revision ed9de5fc (diff)
Added by Jason Dillaman about 3 years ago

librbd: support replay of maintenance ops

Ignore errors that are to be expected when replaying
a maintenance op two or more times.

Fixes: #14822
Signed-off-by: Jason Dillaman <>

Revision e4f73b3b (diff)
Added by Jason Dillaman about 3 years ago

librbd: apply orphaned maintenance ops after journal replay

If a client recorded a maintenance op to the journal but crashed
before writing the op finish event, the image will be in an
inconsistent state. Therefore, once the end of the journal is
reached, attempt to apply all queued ops.

Fixes: #14822
Signed-off-by: Jason Dillaman <>

History

#1 Updated by Jason Dillaman about 3 years ago

  • Description updated (diff)

#2 Updated by Jason Dillaman about 3 years ago

  • Status changed from New to In Progress
  • Assignee set to Jason Dillaman

#3 Updated by Jason Dillaman about 3 years ago

  • Status changed from In Progress to Need Review

#4 Updated by Josh Durgin about 3 years ago

  • Status changed from Need Review to Resolved

Also available in: Atom PDF