Skip to content

Overcommitting storage silently corrupts data #651

@crackerjam

Description

@crackerjam

Trying to copy a 10GB file to a 2GB Stratis filesystem appears to succeed, but in reality causes the file to be corrupted. To reproduce:

  1. Login to a RHEL 9.2 system as root (System has a 20GB root disk, plus a 2GB blank disk)
  2. Install/enable/start stratisd and stratis-cli (version 3.4.1)
    yum -y install stratisd stratis-cli; systemctl enable --now stratisd
  3. stratis pool create testpool /dev/sdb
  4. stratis filesystem create testpool testfilesystem
  5. mkdir -p /mnt/test
  6. Add this line to /etc/fstab
    /dev/stratis/testpool/testfilesystem /mnt/test xfs defaults,x-systemd.requires=stratisd.service 0 0
  7. mount -a
  8. Download a large file to /root for testing
    wget -P /root http://mirrors.rit.edu/centos/7.9.2009/isos/x86_64/CentOS-7-x86_64-Everything-2009.iso
  9. Copy the file to the Stratis filesystem
    cp /root/CentOS-7-x86_64-Everything-2009.iso /mnt/test
  10. Hash the test file in both locations
    md5sum /root/CentOS-7-x86_64-Everything-2009.iso
    md5sum /mnt/test/CentOS-7-x86_64-Everything-2009.iso

These checksums will come back different, indicating data corruption.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions