Bug #18653
closedImprove compatibility between librbd + krbd for the data pool
0%
Description
The data pool feature results in a larger block name prefix. krbd uses fixed-sized data structures that will not currently hold this larger block name prefix. Need to (1) encode the pool id in hex to reduce bytes, (2) determine a new maximum block name prefix length, (3) ensure new images do not violate this new limit.
Updated by Ilya Dryomov over 7 years ago
It's just that krbd tries to avoid excessive memory allocations by packing things together. krbd can handle larger block name prefixes just fine as it has always been assumed to be an arbitrary string, so it's not really a compatibility issue -- just wanted to get some clarity on this given that generate_image_id() doesn't account for the metadata pool id in the data-pool case.
Updated by Ilya Dryomov over 7 years ago
I'm not sure (1) is needed -- hex encoding won't save a lot and we are used to pool ids in decimal ;)
+1 on (2) and (3).
Updated by Jason Dillaman over 7 years ago
Fair enough re: (1) if we don't need to squeeze every last byte out.
Updated by Ilya Dryomov over 7 years ago
- Related to Bug #16887: ceph 10.2.2 rbd status on image format 2 returns "(2) No such file or directory" added
Updated by Jason Dillaman about 7 years ago
- Status changed from In Progress to Fix Under Review
Updated by Jason Dillaman about 7 years ago
- Status changed from Fix Under Review to Pending Backport
Updated by Nathan Cutler about 7 years ago
- Copied to Backport #18771: kraken: rbd: Improve compatibility between librbd + krbd for the data pool added
Updated by Nathan Cutler almost 7 years ago
- Status changed from Pending Backport to Resolved