Skip site navigation (1)Skip section navigation (2)
Date:      Mon, 4 Jul 2022 13:53:15 +0200
From:      thilo jeremias <thilo@nispuk.com>
To:        freebsd-stable <freebsd-stable@freebsd.org>
Subject:   Problem ZFS send / receive 13.1-RELEASE
Message-ID:  <C9A31AB9-19AE-4FD7-BA52-EC01D0453A3C@nispuk.com>

next in thread | raw e-mail | index | archive | help

--Apple-Mail=_5931F2E6-83CB-46C2-9332-0603BDFCAF4F
Content-Transfer-Encoding: quoted-printable
Content-Type: text/plain;
	charset=utf-8

Hello everyone,

I posted a question on ( =
https://forums.freebsd.org/threads/zfs-replication-interrupted-and-resumed=
-missing-snapshots.85666/ )
Which I now think is a bug in zfs send/receive for 13.1-RELEASE


Essentially, an interrupted & restarted receive does not create all =
snapshots from the stream.

The following:
#Interrupted transfer=20
zfs send -R "$D@final" | dd bs=3D10m count=3D200 | zfs recv -s "$D"_bad

#Resume transfer
TOKEN=3D"$(zfs get -H receive_resume_token   "$D"_bad  | cut -f 3)"
zfs send -t "$TOKEN" | zfs recv -s "$D"_bad

#Good transfer
zfs send -R "$D@final" | zfs recv -s "$D"_good


Produces:
NAME                          USED  AVAIL     REFER  MOUNTPOINT
Backup/testset_good@initial  85.2K      -      128K  -
Backup/testset_good@add100m  85.2K      -      100M  -
Backup/testset_good@add300m  85.2K      -      400M  -
Backup/testset_good@del100m  85.2K      -      300M  -
Backup/testset_good@del300m     0B      -      128K  -
Backup/testset_good@final       0B      -      128K  -
NAME                         USED  AVAIL     REFER  MOUNTPOINT
Backup/testset_bad@initial  85.2K      -      128K  -
Backup/testset_bad@add100m     0B      -      100M  -

Which is not correct since it misses the snapshots from the original =
stream (=E2=80=9Cgood=E2=80=9D)

Can this be reproduced by anyone else?


Thilo


-------------------------------
Dipl. Ing. Thilo Jeremias
Hauptstra=C3=9Fe 11
35466 Rabenau

T: +49 15782492240



--Apple-Mail=_5931F2E6-83CB-46C2-9332-0603BDFCAF4F
Content-Transfer-Encoding: quoted-printable
Content-Type: text/html;
	charset=utf-8

<html><head><meta http-equiv=3D"Content-Type" content=3D"text/html; =
charset=3Dutf-8"></head><body style=3D"word-wrap: break-word; =
-webkit-nbsp-mode: space; line-break: after-white-space;" class=3D"">Hello=
 everyone,<div class=3D""><br class=3D""></div><div class=3D"">I posted =
a question on (&nbsp;<a =
href=3D"https://forums.freebsd.org/threads/zfs-replication-interrupted-and=
-resumed-missing-snapshots.85666/" =
class=3D"">https://forums.freebsd.org/threads/zfs-replication-interrupted-=
and-resumed-missing-snapshots.85666/</a> )</div><div class=3D"">Which I =
now think is a bug in zfs send/receive for 13.1-RELEASE</div><div =
class=3D""><br class=3D""></div><div class=3D""><br class=3D""></div><div =
class=3D"">Essentially, an interrupted &amp; restarted receive does not =
create all snapshots from the stream.</div><div class=3D""><br =
class=3D""></div><div class=3D"">The following:</div><div class=3D""><pre =
class=3D"bbCodeCode" dir=3D"ltr" data-xf-init=3D"code-block" =
data-lang=3D"" style=3D"box-sizing: border-box; font-family: Monaco, =
Menlo, Consolas, &quot;Roboto Mono&quot;, &quot;Andale Mono&quot;, =
&quot;Ubuntu Mono&quot;, monospace; font-size: 13px; word-wrap: normal; =
margin-top: 0px; margin-bottom: 0px; padding: 10px 10px 0px; =
line-height: 1.4; overflow: auto; direction: ltr; position: relative; =
tab-size: 4; caret-color: rgb(20, 20, 20); color: rgb(20, 20, =
20);"><code style=3D"box-sizing: border-box; font-family: inherit; =
font-size: 1em;" class=3D"">#Interrupted transfer=20
zfs send -R "$D@final" | dd bs=3D10m count=3D200 | zfs recv -s "$D"_bad

#Resume transfer
TOKEN=3D"$(zfs get -H receive_resume_token   "$D"_bad  | cut -f 3)"
zfs send -t "$TOKEN" | zfs recv -s "$D"_bad
</code></pre></div><div class=3D""><code style=3D"box-sizing: =
border-box; font-family: inherit; font-size: 1em;" class=3D""><br =
class=3D""></code></div><div class=3D""><code style=3D"box-sizing: =
border-box; font-family: inherit; font-size: 1em;" class=3D""><pre =
class=3D"bbCodeCode" dir=3D"ltr" data-xf-init=3D"code-block" =
data-lang=3D"" style=3D"box-sizing: border-box; font-family: Monaco, =
Menlo, Consolas, &quot;Roboto Mono&quot;, &quot;Andale Mono&quot;, =
&quot;Ubuntu Mono&quot;, monospace; font-size: 13px; word-wrap: normal; =
margin-top: 0px; margin-bottom: 0px; padding: 10px 10px 0px; =
line-height: 1.4; overflow: auto; direction: ltr; position: relative; =
tab-size: 4; caret-color: rgb(20, 20, 20); color: rgb(20, 20, =
20);"><code style=3D"box-sizing: border-box; font-family: inherit; =
font-size: 1em;" class=3D"">#Good transfer
zfs send -R "$D@final" | zfs recv -s "$D"_good
</code></pre><div class=3D""><code style=3D"box-sizing: border-box; =
font-family: inherit; font-size: 1em;" class=3D""><br =
class=3D""></code></div></code></div><div class=3D""><code =
style=3D"box-sizing: border-box; font-family: inherit; font-size: 1em;" =
class=3D""><br class=3D""></code></div><div class=3D""><code =
style=3D"box-sizing: border-box; font-family: inherit; font-size: 1em;" =
class=3D"">Produces:</code></div><div class=3D""><code =
style=3D"box-sizing: border-box; font-family: inherit; font-size: 1em;" =
class=3D""><pre class=3D"bbCodeCode" dir=3D"ltr" =
data-xf-init=3D"code-block" data-lang=3D"" style=3D"box-sizing: =
border-box; font-family: Monaco, Menlo, Consolas, &quot;Roboto =
Mono&quot;, &quot;Andale Mono&quot;, &quot;Ubuntu Mono&quot;, monospace; =
font-size: 13px; word-wrap: normal; margin-top: 0px; margin-bottom: 0px; =
padding: 10px 10px 0px; line-height: 1.4; overflow: auto; direction: =
ltr; position: relative; tab-size: 4; caret-color: rgb(20, 20, 20); =
color: rgb(20, 20, 20);"><code style=3D"box-sizing: border-box; =
font-family: inherit; font-size: 1em;" class=3D"">NAME                   =
       USED  AVAIL     REFER  MOUNTPOINT
Backup/testset_good@initial  85.2K      -      128K  -
Backup/testset_good@add100m  85.2K      -      100M  -
Backup/testset_good@add300m  85.2K      -      400M  -
Backup/testset_good@del100m  85.2K      -      300M  -
Backup/testset_good@del300m     0B      -      128K  -
Backup/testset_good@final       0B      -      128K  -
NAME                         USED  AVAIL     REFER  MOUNTPOINT
Backup/testset_bad@initial  85.2K      -      128K  -
Backup/testset_bad@add100m     0B      -      100M  -</code></pre><div =
class=3D""><br class=3D""></div><div class=3D"">Which is not correct =
since it misses the snapshots from the original stream =
(=E2=80=9Cgood=E2=80=9D)</div><div class=3D""><br class=3D""></div><div =
class=3D"">Can this be reproduced by anyone else?</div><div class=3D""><br=
 class=3D""></div><div class=3D""><br class=3D""></div><div =
class=3D"">Thilo</div></code></div><div class=3D""><br =
class=3D""></div><div class=3D""><br class=3D""><div class=3D"">
<meta charset=3D"UTF-8" class=3D""><div style=3D"color: rgb(0, 0, 0); =
letter-spacing: normal; text-align: start; text-indent: 0px; =
text-transform: none; white-space: normal; word-spacing: 0px; =
-webkit-text-stroke-width: 0px; word-wrap: break-word; =
-webkit-nbsp-mode: space; line-break: after-white-space;" class=3D""><div =
style=3D"color: rgb(0, 0, 0); letter-spacing: normal; text-align: start; =
text-indent: 0px; text-transform: none; white-space: normal; =
word-spacing: 0px; -webkit-text-stroke-width: 0px; word-wrap: =
break-word; -webkit-nbsp-mode: space; line-break: after-white-space;" =
class=3D"">-------------------------------<br class=3D"">Dipl. Ing. =
Thilo Jeremias<br class=3D"">Hauptstra=C3=9Fe 11<br class=3D"">35466 =
Rabenau<br class=3D""><br class=3D"">T: +49 15782492240<br class=3D""><br =
class=3D""></div></div>
</div>

<br class=3D""></div></body></html>=

--Apple-Mail=_5931F2E6-83CB-46C2-9332-0603BDFCAF4F--



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?C9A31AB9-19AE-4FD7-BA52-EC01D0453A3C>