Project

General

Profile

Bug #9952

Block size change during zfs receive drops spill block

Added by Alexander Motin almost 2 years ago. Updated 2 months ago.

Status:
Duplicate
Priority:
High
Assignee:
Category:
zfs - Zettabyte File System
Start date:
2018-11-03
Due date:
% Done:

0%

Estimated time:
Difficulty:
Medium
Tags:
needs-triage
Gerrit CR:

Description

Replication code in receive_object() falsely assumes that if received object block size is different from local, then it must be a new object and calls dmu_object_reclaim() to wipe it out. In most cases it is not a problem, since all dnode, bonus buffer and data block(s) are immediately rewritten any way, but the problem is that spill block (if used) is not. This means loss of ACLs, extended attributes, etc.

This issue can be triggered in very simple way:
1. create 4KB file with 10+ ACL entries;
2. take snapshot and send it to different dataset;
3. append another 4KB to the file;
4. take another snapshot and send incrementally;
5. witness ACL loss on receive side.


Related issues

Is duplicate of illumos gate - Feature #8727: Native data and metadata encryption for zfsClosed2017-10-21

Actions

History

#1

Updated by Jerry Jelinek 2 months ago

This is a duplicate of openzfs#8668:
caf9dd209 Fix send/recv lost spill block

We pulled this fix in to illumos as part of the integration of:
eb633035c8 8727 Native data and metadata encryption for zfs

That commit included a large set of openzfs commits, including caf9dd209.

#2

Updated by Jerry Jelinek 2 months ago

  • Related to Feature #8727: Native data and metadata encryption for zfs added
#3

Updated by Jerry Jelinek 2 months ago

  • Assignee set to Jerry Jelinek
#4

Updated by Jerry Jelinek 2 months ago

  • Status changed from In Progress to Duplicate
#5

Updated by Joshua M. Clulow 2 months ago

  • Is duplicate of Feature #8727: Native data and metadata encryption for zfs added
#6

Updated by Joshua M. Clulow 2 months ago

  • Related to deleted (Feature #8727: Native data and metadata encryption for zfs)

Also available in: Atom PDF