+++ This bug was initially created as a clone of Bug #1516206 +++
Description of problem:
DISCARD operation on EC volume doesn't punch hole properly in some cases.
Steps to Reproduce:
1. Create 4+2 EC volume
2. Create file
dd if=/dev/urandom of=/mnt/file bs=1024 count=8
3. Punch hole
fallocate -p -o 1500 -l 3000 /mnt/file
4. When checked hole size is less than the specified size.
Discard should punch hole of the size specified.
--- Additional comment from Worker Ant on 2017-11-22 04:57:37 EST ---
REVIEW: https://review.gluster.org/18838 (cluster/ec: EC DISCARD doesn't punch hole properly) posted (#1) for review on master by Sunil Kumar Acharya
--- Additional comment from Worker Ant on 2017-11-28 04:35:06 EST ---
COMMIT: https://review.gluster.org/18838 committed in master by \"Sunil Kumar Acharya\" <email@example.com> with a commit message- cluster/ec: EC DISCARD doesn't punch hole properly
DISCARD operation on EC volume was punching hole of lesser
size than the specified size in some cases.
EC was not handling punch hole for tail part in some cases.
Updated the code to handle it appropriately.
Signed-off-by: Sunil Kumar Acharya <firstname.lastname@example.org>
Upstream Patch: https://review.gluster.org/#/c/18838/
retested on 3.12.2-8 the above case. Hole was punched properly.
Note: however the log message was not seen
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.