Bug 1823703

Summary: Failures in rebalance due to [No space left on device] error while migrating files with holes.
Product: [Red Hat Storage] Red Hat Gluster Storage Reporter: Sayalee <saraut>
Component: distributeAssignee: Barak Sason Rofman <bsasonro>
Status: CLOSED ERRATA QA Contact: Sayalee <saraut>
Severity: high Docs Contact:
Priority: unspecified    
Version: rhgs-3.5CC: bsasonro, dwalveka, pasik, pprakash, puebele, rcyriac, rhs-bugs, rkothiya, sheggodu, spalai, storage-qa-internal
Target Milestone: ---Keywords: Reopened, ZStream
Target Release: RHGS 3.5.z Batch Update 2   
Hardware: Unspecified   
OS: Unspecified   
Whiteboard:
Fixed In Version: glusterfs-6.0-33 Doc Type: Bug Fix
Doc Text:
Earlier, the rebalance process used fallocate() system call to create the destination files when migrating sparse files. This sometimes resulted in the error “No space left on the device” if the size of the sparse file was enormous and the destination node could not accommodate the file. With this update, the code is modified to use truncate() system call to create destination files, and now rebalance no longer fails the migration of sparse files even with enormous size.
Story Points: ---
Clone Of: Environment:
Last Closed: 2020-06-19 16:21:57 UTC Type: Bug
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:

Description Sayalee 2020-04-14 10:16:09 UTC
Description of problem:
-----------------------
On a volume, there are files with holes present. Added bricks to the volume and triggered rebalance. But there are failures in rebalance due to [No space left on device] error, even though the destination brick has enough space.


Version-Release number of selected component (if applicable):
-------------------------------------------------------------
RHEL info : RHEL 8.2
RHGS build info : 6.0.32

How reproducible:
-----------------
Always

Steps to Reproduce:
------------------
1.Create a 1X3 volume.
2.Mount the volume using FUSE.
3.On the volume root, create files using:
# for i in {1..5000}; do dd if=/dev/urandom of=file_with_holes$i bs=1M count=1 seek=100M; done
4.After the file creation is complete, add bricks to the volume.
5.Trigger rebalance.
6.Wait for rebalance to complete.

Actual results:
---------------
Failures in rebalance due to [No space left on device] error.

Expected results:
----------------
Rebalance should complete successfully as there is enough space on destination brick.

Additional info:
----------------
sos-reports will be shared.

Comment 26 errata-xmlrpc 2020-06-16 06:19:39 UTC
Since the problem described in this bug report should be
resolved in a recent advisory, it has been closed with a
resolution of ERRATA.

For information on the advisory, and where to find the updated
files, follow the link below.

If the solution does not work for you, open a new bug report.

https://access.redhat.com/errata/RHBA-2020:2572

Comment 30 errata-xmlrpc 2020-06-19 16:21:57 UTC
Since the problem described in this bug report should be
resolved in a recent advisory, it has been closed with a
resolution of ERRATA.

For information on the advisory, and where to find the updated
files, follow the link below.

If the solution does not work for you, open a new bug report.

https://access.redhat.com/errata/RHBA-2020:2572