I am trying to pass deep-flatten during clone creation and got this: rbd clone --image-feature deep-flatten d0@s0 d1 rbd: image format can only be set when creating or importing an image On Fri, Oct 23, 2015 at 6:27 AM, Jason Dillaman <dillaman@xxxxxxxxxx> wrote: >> After reading and understanding your mail, i moved on to do some experiments >> regarding deep flatten. some questions showed up: >> here is my experiement: >> ceph version I used: ceph -v output: >> ceph version 9.1.0-299-g89b2b9b > >> 1. create a separate pool for test: >> rados mkpool pool100 >> 2. create parent image with deep-flatten feature: >> rbd create --image-feature deep-flatten --image-feature layering -p pool100 >> user1_image1 --size 1024 --image-format 2 >> 3. create snap: >> rbd snap create pool100/user1_image1@user1_image1_snap >> 4. protect snap: >> rbd snap protect pool100/user1_image1@user1_image1_snap >> 5. clone child image based on this snap: >> rbd clone pool100/user1_image1@user1_image1_snap pool100/user1_image2 >> 6. create snap on clone image: >> rbd snap create pool100/user1_image2@user1_image2_snap >> 7. flatten the clone image: >> rbd flatten pool100/user1_image2 > >> test output: >> rbd info pool100/user1_image2 >> rbd image 'user1_image2': >> size 1024 MB in 256 objects >> order 22 (4096 kB objects) >> block_name_prefix: rbd_data.1016317b2d6 >> format: 2 >> features: layering <==== why after flatten, cloned image is without >> deep-flatten feature? >> flags: > > > 'rbd clone' doesn't copy features from the parent image -- you needed to specify "--image-feature deep-flatten" when creating the clone. > > >> rbd info pool100/user1_image2@user1_image2_snap > >> rbd image 'user1_image2': >> size 1024 MB in 256 objects >> order 22 (4096 kB objects) >> block_name_prefix: rbd_data.1016317b2d6 >> format: 2 >> features: layering >> flags: >> protected: True >> parent: pool100/user1_image1@user1_image1_snap <==== why after flatten, child >> snapshot still has parent snap info? >> overlap: 1024 MB > > > Because deep-flatten wasn't enabled on the clone. > > >> Another question is since deep-flatten operations are applied to cloned >> image, why we need to create parent image with deep-flatten image features?? > > > The deep-flatten feature is not required on the parent image (since non-cloned images cannot be flattened). > > >> Cory > > > -- > > Jason Dillaman > _______________________________________________ > ceph-users mailing list > ceph-users@xxxxxxxxxxxxxx > http://lists.ceph.com/listinfo.cgi/ceph-users-ceph.com _______________________________________________ ceph-users mailing list ceph-users@xxxxxxxxxxxxxx http://lists.ceph.com/listinfo.cgi/ceph-users-ceph.com