Bug #18653
closed
Improve compatibility between librbd + krbd for the data pool
Added by Jason Dillaman over 7 years ago.
Updated almost 7 years ago.
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.
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.
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).
Fair enough re: (1) if we don't need to squeeze every last byte out.
- Related to Bug #16887: ceph 10.2.2 rbd status on image format 2 returns "(2) No such file or directory" added
- Status changed from In Progress to Fix Under Review
- Status changed from Fix Under Review to Pending Backport
- Copied to Backport #18771: kraken: rbd: Improve compatibility between librbd + krbd for the data pool added
- Status changed from Pending Backport to Resolved
Also available in: Atom
PDF