Project

General

Profile

action #11792

Feature 313516: implement image based snapshotting for btrfs analog to zfs send/receive

Added by maritawerner over 5 years ago. Updated over 5 years ago.

Status:
Resolved
Priority:
Urgent
Assignee:
Category:
-
Target version:
-
Start date:
2016-05-04
Due date:
% Done:

100%

Estimated time:
Difficulty:

Description

For details see https://fate.suse.com/313516

Testcase:

The way the send/receive feature is used is like this:
Populate a filesystem/subvolume;
Create a snapshot A of a filesystem/subvolume;
Use a full send operation to send that snapshot to some other filesystem;
Verify that every single file and directory that exists in the source snapshot/filesystem also exists at the destination filesystem/snapshot, that the files have exactly the same data and metadata (owner, permissions, xattrs, etc);
Do changes in the source filesystem/subvolume (create new files/directories, delete files/directories, write data to files, add/remove xattrs, change owner, permissions, etc)
Create a snapshot B of the source filesystem/subvolume;
Now do an incremental send operation using snapshot A as parent and B as the send snapshot and receive it in the destination filesystem. This sends only the differences between snapshots A and B;
Verify that snapshot B on the destination filesystem as exactly the same content as in the source filesystem (do the same checks that were done in step 4);
Do more changes in the source filesystem;
Create snapshot C on the source filesystem;
Do an incremental send using B as parent and C and send snapshot;
repeat the logic to verify the snapshots in the source and destination filesystems have exactly the same files/data/metadata
and so on
See also: https://git.kernel.org/cgit/fs/xfs/xfstests-dev.git/tree/tests/btrfs/007 https://git.kernel.org/cgit/fs/xfs/xfstests-dev.git/tree/tests/btrfs/group


Checklist

  • SLES
  • TW

History

#1 Updated by RBrownSUSE over 5 years ago

  • Priority changed from Normal to Urgent

#2 Updated by mkravec over 5 years ago

  • Assignee set to mkravec

#3 Updated by mkravec over 5 years ago

  • Status changed from New to In Progress
  • % Done changed from 0 to 90

#4 Updated by mkravec over 5 years ago

  • Status changed from In Progress to Resolved
  • % Done changed from 90 to 100

#5 Updated by okurz over 5 years ago

  • Status changed from Resolved to In Progress

do you know the https://progress.opensuse.org/projects/openqatests/wiki/Wiki#Definition-of-DONE ? Can you please reference a successful test run of osd and o3 in the progress item before setting to resolved?

We don't want to overlook tests that have been just merged to github but are never called on any productive instance because nobody added the test suites to the products or similar.

#6 Updated by mkravec over 5 years ago

  • Checklist item changed from to [x] SLES, [ ] TW

#7 Updated by mkravec over 5 years ago

  • Checklist item changed from to [x] TW

#8 Updated by mkravec over 5 years ago

  • Status changed from In Progress to Resolved

Also available in: Atom PDF