From bdd7ad3787beebcf55340f7ebb495d42002516d2 Mon Sep 17 00:00:00 2001 From: Sunil Kumar Acharya Date: Wed, 22 Nov 2017 15:12:26 +0530 Subject: cluster/ec: EC DISCARD doesn't punch hole properly Problem: DISCARD operation on EC volume was punching hole of lesser size than the specified size in some cases. Solution: EC was not handling punch hole for tail part in some cases. Updated the code to handle it appropriately. BUG: 1516206 Change-Id: If3e69e417c3e5034afee04e78f5f78855e65f932 Signed-off-by: Sunil Kumar Acharya --- tests/basic/ec/ec-discard.t | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) (limited to 'tests/basic') diff --git a/tests/basic/ec/ec-discard.t b/tests/basic/ec/ec-discard.t index 4a44cecf0a9..001f4498c86 100644 --- a/tests/basic/ec/ec-discard.t +++ b/tests/basic/ec/ec-discard.t @@ -137,6 +137,15 @@ TEST md5_sum=`get_md5_sum $B0/test_file` EXPECT $md5_sum get_md5_sum $M0/test_file TEST rm -f $B0/test_file $M0/test_file +#Offset and Size not at boundary covering a stripe +TEST dd if=/dev/urandom of=$B0/test_file bs=1024 count=8 +TEST cp $B0/test_file $M0/test_file +TEST fallocate -p -o 1500 -l 3000 $B0/test_file +TEST fallocate -p -o 1500 -l 3000 $M0/test_file +TEST md5_sum=`get_md5_sum $B0/test_file` +EXPECT $md5_sum get_md5_sum $M0/test_file +TEST rm -f $B0/test_file $M0/test_file + #Offset and Size not at boundary TEST dd if=/dev/urandom of=$B0/test_file bs=1024 count=8 TEST cp $B0/test_file $M0/test_file @@ -144,7 +153,6 @@ TEST fallocate -p -o 1000 -l 3072 $B0/test_file TEST fallocate -p -o 1000 -l 3072 $M0/test_file TEST md5_sum=`get_md5_sum $B0/test_file` EXPECT $md5_sum get_md5_sum $M0/test_file -#TEST rm -f $B0/test_file $M0/test_file #Data Corruption Tests #Kill brick1 and brick2 -- cgit