]> CyberLeo.Net >> Repos - FreeBSD/stable/8.git/commit
MFC r240870 (pjd):
authormm <mm@ccf9f872-aa2e-dd11-9fc8-001c23d0bc1f>
Fri, 19 Apr 2013 10:35:45 +0000 (10:35 +0000)
committermm <mm@ccf9f872-aa2e-dd11-9fc8-001c23d0bc1f>
Fri, 19 Apr 2013 10:35:45 +0000 (10:35 +0000)
commit0454ad7d3b2223d2e13404f660b49be25071f82a
tree3128afcc7ef26ec4e8afcc6f18ab006c5cf48af9
parentc70234eba87568b57531ade2f674163c89d39bd0
MFC r240870 (pjd):
It is possible to recursively destroy snapshots even if the snapshot
doesn't exist on a dataset we are starting from. For example if we
have the following configuration:

tank
tank/foo
tank/foo@snap
tank/bar
tank/bar@snap

We can execute:

# zfs destroy -t tank@snap

eventhough tank@snap doesn't exit.

Unfortunately it is not possible to do the same with recursive rename:

# zfs rename -r tank@snap tank@pans
cannot open 'tank@snap': dataset does not exist

...until now. This change allows to recursively rename snapshots even if
snapshot doesn't exist on the starting dataset.

Sponsored by: rsync.net

git-svn-id: svn://svn.freebsd.org/base/stable/8@249645 ccf9f872-aa2e-dd11-9fc8-001c23d0bc1f
cddl/contrib/opensolaris/cmd/zfs/zfs_main.c
cddl/contrib/opensolaris/lib/libzfs/common/libzfs.h
cddl/contrib/opensolaris/lib/libzfs/common/libzfs_dataset.c
sys/cddl/contrib/opensolaris/uts/common/fs/zfs/dsl_dataset.c
sys/cddl/contrib/opensolaris/uts/common/fs/zfs/zfs_ioctl.c