Thanks Jason, very clear explanation. However, I found some strange behavior when export-diff on a cloned image, not sure it is a bug on calc_snap_set_diff(). The test is, Image A is cloned from a parent image. then create snap1 for image A. The content of export-diff A@snap1 will be changed when update image A. Only after image A has no overlap with parent, the content of export-diff A@snap1 is stabled, which is almost zero. I don't think it is a designed behavior. export-diff A@snap1 should always get a stable output no matter image A is cloned or not.
Please correct me if anything wrong. Thanks, Zhongyan On Tue, Nov 22, 2016 at 10:31 PM, Jason Dillaman <jdill...@redhat.com> wrote: > On Tue, Nov 22, 2016 at 5:31 AM, Zhongyan Gu <zhongyan...@gmail.com> > wrote: > > So if initial snapshot is NOT specified, then: > > rbd export-diff image@snap1 will diff all data to snap1. this cmd > equals to > > : > > rbd export image@snap1. Is my understand right or not?? > > > While they will both export all data associated w/ image@snap1, the > "export" command will generate a raw, non-sparse dump of the full > image whereas "export-diff" will export only sections of the image > that contain data. The file generated from "export" can be used with > the "import" command to create a new image, whereas the file generated > from "export-diff" can only be used with "import-diff" against an > existing image. > > -- > Jason >
_______________________________________________ ceph-users mailing list ceph-users@lists.ceph.com http://lists.ceph.com/listinfo.cgi/ceph-users-ceph.com