Feature #4709
closedkrbd: support stripingv2 images that don't require I/O path changes
0%
Description
Currently when the rbd command creates format 2 images, due to a bug it always includes the STRIPINGV2 feature bit unless the user explicitly specifies striping parameters that wouldn't change the I/O path. The set of cases where no I/O path changes are needed is:
stripe_count == 1 stripe_unit == (1 << order) // i.e. object size
In this case (which is the current default for a format 2 image), the actual striping is the same as in a non-STRIPINGV2 image with that object order.
To work with these images, the kernel client needs to fetch the stripe_count and stripe_unit via the get_stripe_unit_count class method when the image has the STRIPINGV2 feature bit, and check if they match those critieria. If they do, the kernel client should proceed. Otherwise, more changes would be needed to support the image, so an error should be returned.
Updated by Alex Elder about 11 years ago
- Status changed from 12 to In Progress
Starting work on this.
Updated by Alex Elder about 11 years ago
- Status changed from In Progress to Fix Under Review
The following has been posted for review and is available
in the "review/wip-stripe-v2" branch of the ceph-client
git repository.
[PATCH] rbd: get and check striping parameters
Updated by Alex Elder about 11 years ago
- Status changed from Fix Under Review to Resolved
The following has been committed to the "testing" branch
of the ceph-client git repository:
09186dd rbd: get and check striping parameters