1*5602294fSDan Kimmel#!/usr/bin/ksh 2*5602294fSDan Kimmel 3*5602294fSDan Kimmel# 4*5602294fSDan Kimmel# This file and its contents are supplied under the terms of the 5*5602294fSDan Kimmel# Common Development and Distribution License ("CDDL"), version 1.0. 6*5602294fSDan Kimmel# You may only use this file in accordance with the terms of version 7*5602294fSDan Kimmel# 1.0 of the CDDL. 8*5602294fSDan Kimmel# 9*5602294fSDan Kimmel# A full copy of the text of the CDDL should have accompanied this 10*5602294fSDan Kimmel# source. A copy of the CDDL is also available via the Internet at 11*5602294fSDan Kimmel# http://www.illumos.org/license/CDDL. 12*5602294fSDan Kimmel# 13*5602294fSDan Kimmel 14*5602294fSDan Kimmel# 15*5602294fSDan Kimmel# Copyright (c) 2015 by Delphix. All rights reserved. 16*5602294fSDan Kimmel# 17*5602294fSDan Kimmel 18*5602294fSDan Kimmel. $STF_SUITE/tests/functional/rsend/rsend.kshlib 19*5602294fSDan Kimmel 20*5602294fSDan Kimmel# 21*5602294fSDan Kimmel# Description: 22*5602294fSDan Kimmel# Verify compressed send streams replicate data and datasets 23*5602294fSDan Kimmel# 24*5602294fSDan Kimmel# Strategy: 25*5602294fSDan Kimmel# 1. Back up all the data from POOL/FS 26*5602294fSDan Kimmel# 2. Verify all the datasets and data can be recovered in POOL2 27*5602294fSDan Kimmel# 3. Back up all the data from root filesystem POOL2 28*5602294fSDan Kimmel# 4. Verify all the data can be recovered, too 29*5602294fSDan Kimmel# 30*5602294fSDan Kimmel 31*5602294fSDan Kimmelverify_runnable "both" 32*5602294fSDan Kimmel 33*5602294fSDan Kimmellog_assert "zfs send -c -R send replication stream up to the named snap." 34*5602294fSDan Kimmellog_onexit cleanup_pool $POOL2 35*5602294fSDan Kimmel 36*5602294fSDan Kimmel# Verify the entire pool and descendants can be backed up and restored. 37*5602294fSDan Kimmellog_must eval "zfs send -c -R $POOL@final > $BACKDIR/pool-final-R" 38*5602294fSDan Kimmellog_must eval "zfs receive -d -F $POOL2 < $BACKDIR/pool-final-R" 39*5602294fSDan Kimmel 40*5602294fSDan Kimmeldstds=$(get_dst_ds $POOL $POOL2) 41*5602294fSDan Kimmellog_must cmp_ds_subs $POOL $dstds 42*5602294fSDan Kimmellog_must cmp_ds_cont $POOL $dstds 43*5602294fSDan Kimmel 44*5602294fSDan Kimmel# Cleanup POOL2 45*5602294fSDan Kimmellog_must cleanup_pool $POOL2 46*5602294fSDan Kimmel 47*5602294fSDan Kimmel# Verify all the filesystems and descendants can be backed up and restored. 48*5602294fSDan Kimmellog_must eval "zfs send -c -R $POOL/$FS@final > $BACKDIR/fs-final-R" 49*5602294fSDan Kimmellog_must eval "zfs receive -d $POOL2 < $BACKDIR/fs-final-R" 50*5602294fSDan Kimmel 51*5602294fSDan Kimmeldstds=$(get_dst_ds $POOL/$FS $POOL2) 52*5602294fSDan Kimmellog_must cmp_ds_subs $POOL/$FS $dstds 53*5602294fSDan Kimmellog_must cmp_ds_cont $POOL/$FS $dstds 54*5602294fSDan Kimmel 55*5602294fSDan Kimmellog_pass "zfs send -c -R send replication stream up to the named snap." 56