Feature #2718
librbd: map parent -> child in a per-pool rbd_children object when cloning
Related issues
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