diff options
| author | Krutika Dhananjay <kdhananj@redhat.com> | 2018-04-12 15:47:00 +0530 |
|---|---|---|
| committer | Krutika Dhananjay <kdhananj@redhat.com> | 2018-06-20 15:14:56 +0530 |
| commit | 0751039eadb23b8658423477aa81964b339b4f5e (patch) | |
| tree | bd09f83a94840bfd8b8e8d02b80d5bc1666ed57d /tests/bugs/shard/bug-shard-discard.t | |
| parent | cc2f2e7bfef6ca47e740c5ee6b4665ec2880f860 (diff) | |
features/shard: Perform shards deletion in the background
A synctask is created that would scan the indices from
.shard/.remove_me, to delete the shards associated with the
gfid corresponding to the index bname and the rate of deletion
is controlled by the option features.shard-deletion-rate whose
default value is 100.
The task is launched on two accounts:
1. when shard receives its first-ever lookup on the volume
2. when a rename or unlink deleted an inode
Change-Id: Ia83117230c9dd7d0d9cae05235644f8475e97bc3
updates: bz#1568521
Signed-off-by: Krutika Dhananjay <kdhananj@redhat.com>
Diffstat (limited to 'tests/bugs/shard/bug-shard-discard.t')
| -rw-r--r-- | tests/bugs/shard/bug-shard-discard.t | 19 |
1 files changed, 11 insertions, 8 deletions
diff --git a/tests/bugs/shard/bug-shard-discard.t b/tests/bugs/shard/bug-shard-discard.t index 884d9e75ff5..910ade14801 100644 --- a/tests/bugs/shard/bug-shard-discard.t +++ b/tests/bugs/shard/bug-shard-discard.t @@ -5,6 +5,12 @@ cleanup +FILE_COUNT_TIME=5 + +function get_shard_count { + ls $1/$2.* | wc -l +} + TEST glusterd TEST pidof glusterd TEST $CLI volume create $V0 replica 2 $H0:$B0/${V0}{0..3} @@ -42,14 +48,11 @@ EXPECT_NOT "1" file_all_zeroes `find $B0 -name $gfid_foo.1` # Now unlink the file. And ensure that all shards associated with the file are cleaned up TEST unlink $M0/foo -#TEST ! stat $B0/${V0}0/.shard/$gfid_foo.1 -#TEST ! stat $B0/${V0}1/.shard/$gfid_foo.1 -#TEST ! stat $B0/${V0}2/.shard/$gfid_foo.1 -#TEST ! stat $B0/${V0}3/.shard/$gfid_foo.1 -#TEST ! stat $B0/${V0}0/.shard/$gfid_foo.2 -#TEST ! stat $B0/${V0}1/.shard/$gfid_foo.2 -#TEST ! stat $B0/${V0}2/.shard/$gfid_foo.2 -#TEST ! stat $B0/${V0}3/.shard/$gfid_foo.2 + +EXPECT_WITHIN $FILE_COUNT_TIME 0 get_shard_count $B0/${V0}0/.shard $gfid_foo +EXPECT_WITHIN $FILE_COUNT_TIME 0 get_shard_count $B0/${V0}1/.shard $gfid_foo +EXPECT_WITHIN $FILE_COUNT_TIME 0 get_shard_count $B0/${V0}2/.shard $gfid_foo +EXPECT_WITHIN $FILE_COUNT_TIME 0 get_shard_count $B0/${V0}3/.shard $gfid_foo TEST ! stat $M0/foo #clean up everything |
