Project

General

Profile

Feature #2718

librbd: map parent -> child in a per-pool rbd_children object when cloning

Added by Josh Durgin about 11 years ago. Updated about 11 years ago.

Status:
Resolved
Priority:
Normal
Assignee:
Target version:
% Done:

0%

Source:
Tags:
Backport:
Reviewed:
Affected Versions:
Pull request ID:

Related issues

Blocked by rbd - Feature #2717: cls_rbd: add methods for maintaining mapping from parent to child images Resolved 07/05/2012

History

#1 Updated by Josh Durgin about 11 years ago

  • Target version deleted (v0.50)

#2 Updated by Sage Weil about 11 years ago

  • Target version set to v0.50
  • translation missing: en.field_position set to 1324

#3 Updated by Sage Weil about 11 years ago

  • translation missing: en.field_story_points set to 1
  • translation missing: en.field_position deleted (1324)
  • translation missing: en.field_position set to 1324

#4 Updated by Sage Weil about 11 years ago

  • Target version deleted (v0.50)
  • translation missing: en.field_position deleted (1323)
  • translation missing: en.field_position set to 2

#5 Updated by Sage Weil about 11 years ago

  • translation missing: en.field_position deleted (7)
  • translation missing: en.field_position set to 4

#6 Updated by Anonymous about 11 years ago

  • translation missing: en.field_position deleted (9)
  • translation missing: en.field_position set to 7

#7 Updated by Anonymous about 11 years ago

  • translation missing: en.field_position deleted (7)
  • translation missing: en.field_position set to 2

#8 Updated by Anonymous about 11 years ago

  • Assignee set to Dan Mick

#9 Updated by Dan Mick about 11 years ago

From the design doc:

In addition to knowing which parent a given image has, we want to be able to tell if a protected snapshot still has children. This is accomplished with a new per-pool object, rbd_children, which maps (parent pool id, parent image id, parent snapshot id) to a list of child image ids. This is stored in the same pool as the child image because the client creating a clone already has read/write access to everything in this pool, but may not have write access to the parent’s pool. This lets a client with read-only access to one pool clone a snapshot from that pool into a pool they have full access to. It increases the cost of unprotecting an image, since this needs to check for children in every pool, but this is a rare operation. It would likely only be done before removing old images, which is already much more expensive because it involves deleting every data object in the image.

#10 Updated by Dan Mick about 11 years ago

  • Status changed from New to 12

#11 Updated by Anonymous about 11 years ago

  • Target version set to v0.51
  • translation missing: en.field_position deleted (10)
  • translation missing: en.field_position set to 9

#12 Updated by Josh Durgin about 11 years ago

  • Status changed from 12 to Fix Under Review

#13 Updated by Sage Weil about 11 years ago

  • Status changed from Fix Under Review to Resolved
  • translation missing: en.field_position deleted (21)
  • translation missing: en.field_position set to 21

Also available in: Atom PDF