2019-10-24 12:29:11 |
Andreas Hasenack |
bug |
|
|
added bug |
2019-10-24 12:30:20 |
Andreas Hasenack |
description |
When using zfs diff on an encrypted dataset, I frequently encounter this error:
# zfs diff nsnx/trusty-2a@snap1 nsnx/trusty-2a
+ /nsnx/trusty-2a/bin
Unable to determine path or stats for object 5 in nsnx/trusty-2a@zfs-diff-32359-000000010001f165: File exists
I believe this to be upstream bug https://github.com/zfsonlinux/zfs/issues/7678, fixed with https://github.com/zfsonlinux/zfs/pull/9343
Here is one way to reproduce it:
# mkdir /zfs-test
# cd /zfs-test
# truncate -s 10G file.img
# zpool create -o ashift=12 -O acltype=posixacl -O compression=lz4 -O xattr=sa -O normalization=formD -O dnodesize=auto tank $(pwd)/file.img
# zfs create tank/d1 -o encryption=on -o keyformat=passphrase
Enter passphrase:
Re-enter passphrase:
# dd if=/dev/urandom bs=4k of=/tank/d1/somedata.bin count=10240
10240+0 records in
10240+0 records out
41943040 bytes (42 MB, 40 MiB) copied, 0,304365 s, 138 MB/s
# zfs snapshot tank/d1@s1
# dd if=/dev/urandom bs=4k of=/tank/d1/somedata2.bin count=10240
10240+0 records in
10240+0 records out
41943040 bytes (42 MB, 40 MiB) copied, 0,305324 s, 137 MB/s
# zfs diff tank/d1@s1 tank/d1
Unable to determine path or stats for object 3 in tank/d1@s1: File exists
There may be a simpler way to test this, but this should be enough to start with. |
Eoan 19.10
zfsutils-linux 0.8.1-1ubuntu14
kernel 5.3.0-19-generic #20-Ubuntu
When using zfs diff on an encrypted dataset, I frequently encounter this error:
# zfs diff nsnx/trusty-2a@snap1 nsnx/trusty-2a
+ /nsnx/trusty-2a/bin
Unable to determine path or stats for object 5 in nsnx/trusty-2a@zfs-diff-32359-000000010001f165: File exists
I believe this to be upstream bug https://github.com/zfsonlinux/zfs/issues/7678, fixed with https://github.com/zfsonlinux/zfs/pull/9343
Here is one way to reproduce it:
# mkdir /zfs-test
# cd /zfs-test
# truncate -s 10G file.img
# zpool create -o ashift=12 -O acltype=posixacl -O compression=lz4 -O xattr=sa -O normalization=formD -O dnodesize=auto tank $(pwd)/file.img
# zfs create tank/d1 -o encryption=on -o keyformat=passphrase
Enter passphrase:
Re-enter passphrase:
# dd if=/dev/urandom bs=4k of=/tank/d1/somedata.bin count=10240
10240+0 records in
10240+0 records out
41943040 bytes (42 MB, 40 MiB) copied, 0,304365 s, 138 MB/s
# zfs snapshot tank/d1@s1
# dd if=/dev/urandom bs=4k of=/tank/d1/somedata2.bin count=10240
10240+0 records in
10240+0 records out
41943040 bytes (42 MB, 40 MiB) copied, 0,305324 s, 137 MB/s
# zfs diff tank/d1@s1 tank/d1
Unable to determine path or stats for object 3 in tank/d1@s1: File exists
There may be a simpler way to test this, but this should be enough to start with. |
|
2019-10-24 14:55:14 |
Colin Ian King |
zfs-linux (Ubuntu): importance |
Undecided |
High |
|
2019-10-24 14:55:16 |
Colin Ian King |
zfs-linux (Ubuntu): assignee |
|
Colin Ian King (colin-king) |
|
2019-10-24 14:55:18 |
Colin Ian King |
zfs-linux (Ubuntu): status |
New |
In Progress |
|
2019-10-24 17:01:40 |
Colin Ian King |
description |
Eoan 19.10
zfsutils-linux 0.8.1-1ubuntu14
kernel 5.3.0-19-generic #20-Ubuntu
When using zfs diff on an encrypted dataset, I frequently encounter this error:
# zfs diff nsnx/trusty-2a@snap1 nsnx/trusty-2a
+ /nsnx/trusty-2a/bin
Unable to determine path or stats for object 5 in nsnx/trusty-2a@zfs-diff-32359-000000010001f165: File exists
I believe this to be upstream bug https://github.com/zfsonlinux/zfs/issues/7678, fixed with https://github.com/zfsonlinux/zfs/pull/9343
Here is one way to reproduce it:
# mkdir /zfs-test
# cd /zfs-test
# truncate -s 10G file.img
# zpool create -o ashift=12 -O acltype=posixacl -O compression=lz4 -O xattr=sa -O normalization=formD -O dnodesize=auto tank $(pwd)/file.img
# zfs create tank/d1 -o encryption=on -o keyformat=passphrase
Enter passphrase:
Re-enter passphrase:
# dd if=/dev/urandom bs=4k of=/tank/d1/somedata.bin count=10240
10240+0 records in
10240+0 records out
41943040 bytes (42 MB, 40 MiB) copied, 0,304365 s, 138 MB/s
# zfs snapshot tank/d1@s1
# dd if=/dev/urandom bs=4k of=/tank/d1/somedata2.bin count=10240
10240+0 records in
10240+0 records out
41943040 bytes (42 MB, 40 MiB) copied, 0,305324 s, 137 MB/s
# zfs diff tank/d1@s1 tank/d1
Unable to determine path or stats for object 3 in tank/d1@s1: File exists
There may be a simpler way to test this, but this should be enough to start with. |
== SRU Justification, Eoan ==
Using zfs diff on an encrypted dataset with large objects one can hit an error such as follows:
# zfs diff nsnx/trusty-2a@snap1 nsnx/trusty-2a
+ /nsnx/trusty-2a/bin
Unable to determine path or stats for object 5 in nsnx/trusty-2a@zfs-diff-32359-000000010001f165: File exists
== Fix ==
Upstream commit d359e99c38f667 ("diff_cb() does not handle large dnodes") as addressed in ZFS bug fix: https://github.com/zfsonlinux/zfs/pull/9343
== Testcase ==
# mkdir /zfs-test
# cd /zfs-test
# truncate -s 10G file.img
# zpool create -o ashift=12 -O acltype=posixacl -O compression=lz4 -O xattr=sa -O normalization=formD -O dnodesize=auto tank $(pwd)/file.img
# zfs create tank/d1 -o encryption=on -o keyformat=passphrase
Enter passphrase:
Re-enter passphrase:
# dd if=/dev/urandom bs=4k of=/tank/d1/somedata.bin count=10240
10240+0 records in
10240+0 records out
41943040 bytes (42 MB, 40 MiB) copied, 0,304365 s, 138 MB/s
# zfs snapshot tank/d1@s1
# dd if=/dev/urandom bs=4k of=/tank/d1/somedata2.bin count=10240
10240+0 records in
10240+0 records out
41943040 bytes (42 MB, 40 MiB) copied, 0,305324 s, 137 MB/s
Without the fix, one hits an error such as:
# zfs diff tank/d1@s1 tank/d1
Unable to determine path or stats for object 3 in tank/d1@s1: File exists
With the fix, we get:
+ /tank/d1/somedata2.bin
M /tank/d1/
== Regression Potential ==
This is a minor change in module/zfs/dmu_diff.c and it only affects the zfs diff component, so this should not affect ZFS in terms of file system corruption/data loss. This has also been upstream regression tested and passes the Ubuntu ZFS regressions tests too. So the risk is limited.
---------------------
Eoan 19.10
zfsutils-linux 0.8.1-1ubuntu14
kernel 5.3.0-19-generic #20-Ubuntu
When using zfs diff on an encrypted dataset, I frequently encounter this error:
# zfs diff nsnx/trusty-2a@snap1 nsnx/trusty-2a
+ /nsnx/trusty-2a/bin
Unable to determine path or stats for object 5 in nsnx/trusty-2a@zfs-diff-32359-000000010001f165: File exists
I believe this to be upstream bug https://github.com/zfsonlinux/zfs/issues/7678, fixed with https://github.com/zfsonlinux/zfs/pull/9343
Here is one way to reproduce it:
# mkdir /zfs-test
# cd /zfs-test
# truncate -s 10G file.img
# zpool create -o ashift=12 -O acltype=posixacl -O compression=lz4 -O xattr=sa -O normalization=formD -O dnodesize=auto tank $(pwd)/file.img
# zfs create tank/d1 -o encryption=on -o keyformat=passphrase
Enter passphrase:
Re-enter passphrase:
# dd if=/dev/urandom bs=4k of=/tank/d1/somedata.bin count=10240
10240+0 records in
10240+0 records out
41943040 bytes (42 MB, 40 MiB) copied, 0,304365 s, 138 MB/s
# zfs snapshot tank/d1@s1
# dd if=/dev/urandom bs=4k of=/tank/d1/somedata2.bin count=10240
10240+0 records in
10240+0 records out
41943040 bytes (42 MB, 40 MiB) copied, 0,305324 s, 137 MB/s
# zfs diff tank/d1@s1 tank/d1
Unable to determine path or stats for object 3 in tank/d1@s1: File exists
There may be a simpler way to test this, but this should be enough to start with. |
|
2019-10-24 17:28:35 |
Colin Ian King |
bug |
|
|
added subscriber Ubuntu Stable Release Updates Team |
2019-10-24 17:35:06 |
Colin Ian King |
removed subscriber Ubuntu Stable Release Updates Team |
|
|
|
2019-11-01 12:06:52 |
Colin Ian King |
bug |
|
|
added subscriber Ubuntu Stable Release Updates Team |
2019-11-01 14:41:09 |
Launchpad Janitor |
zfs-linux (Ubuntu): status |
In Progress |
Fix Released |
|
2019-11-03 17:55:01 |
Colin Ian King |
nominated for series |
|
Ubuntu Eoan |
|
2019-11-03 17:55:01 |
Colin Ian King |
bug task added |
|
zfs-linux (Ubuntu Eoan) |
|
2019-11-05 06:22:08 |
Adam Conrad |
zfs-linux (Ubuntu Eoan): status |
New |
Fix Committed |
|
2019-11-05 06:22:11 |
Adam Conrad |
bug |
|
|
added subscriber SRU Verification |
2019-11-05 13:18:04 |
Colin Ian King |
tags |
|
verification-done-eoan |
|
2019-11-14 10:56:28 |
Ćukasz Zemczak |
removed subscriber Ubuntu Stable Release Updates Team |
|
|
|
2019-11-14 11:06:31 |
Launchpad Janitor |
zfs-linux (Ubuntu Eoan): status |
Fix Committed |
Fix Released |
|