--- recepies/zfs/zfs-replicate-pool.pl 2011/09/05 22:02:00 267 +++ recepies/zfs/zfs-replicate-pool.pl 2011/09/05 22:18:01 268 @@ -5,6 +5,7 @@ use Net::OpenSSH; use Data::Dump qw(dump); use List::Util qw(first); +use Time::Hires; my $arh = Net::OpenSSH->new('root@10.60.0.204'); my $dev = Net::OpenSSH->new('root@10.60.0.202'); @@ -45,7 +46,7 @@ push @{ $snapshot->{$fs} }, $name; } - warn "snapshots_from $host ",dump($snapshot),$/; +# warn "snapshots_from $host ",dump($snapshot),$/; return $snapshot; } @@ -102,6 +103,8 @@ my ($rin1,$pid1) = $dev->pipe_in($recv); warn ">> pid: $pid1"; + sleep 0.1; # FIXME wait for netcat to start + my $send = "zfs send $snapshot | nc -q 0 -w 5 10.60.0.202 8888"; warn "<< $send\n"; $arh->system($send); @@ -112,6 +115,9 @@ $dev->system("zfs set readonly=on $to_pool/$name") if $i == 0; die $dev->error if $dev->error; + $dev_snapshot = snapshots_from $dev; + die "can't find new snapshot $snap" unless $dev_snapshot->{$to_dev}; + } }