This service will be undergoing maintenance at 00:00 UTC, 2017-10-23 It is expected to last about 30 minutes
Bug 983950 - Afr readdir backward compatibilty issues
Afr readdir backward compatibilty issues
Product: Red Hat Gluster Storage
Classification: Red Hat
Component: glusterfs (Show other bugs)
Unspecified Unspecified
high Severity medium
: ---
: ---
Assigned To: Pranith Kumar K
Sachidananda Urs
Depends On: 886998
  Show dependency treegraph
Reported: 2013-07-12 07:19 EDT by Pranith Kumar K
Modified: 2013-09-23 18:35 EDT (History)
7 users (show)

See Also:
Fixed In Version: glusterfs-
Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: 886998
Last Closed: 2013-09-23 18:35:53 EDT
Type: Bug
Regression: ---
Mount Type: ---
Documentation: ---
Verified Versions:
Category: ---
oVirt Team: ---
RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: ---

Attachments (Terms of Use)

  None (edit)
Description Pranith Kumar K 2013-07-12 07:19:46 EDT
+++ This bug was initially created as a clone of Bug #886998 +++

Description of problem:
1) Afr Trash directory filtering needs to happen so that 3.4 afr filters 3.3's .landfill directory

2) Strict readdir implementation needs to be removed in afr.

Version-Release number of selected component (if applicable):

How reproducible:

Steps to Reproduce:
Actual results:

Expected results:

Additional info:

--- Additional comment from Vijay Bellur on 2013-01-23 04:26:22 EST ---

CHANGE: (cluster/afr: Remove strict-readdir implementation) merged in master by Anand Avati (

--- Additional comment from Pranith Kumar K on 2013-03-12 05:49:05 EDT ---

--- Additional comment from Anand Avati on 2013-07-12 06:49:50 EDT ---

REVIEW: (cluster/afr: Handle REPLICATE_TRASH_DIR from old bricks) posted (#2) for review on master by Pranith Kumar Karampuri (
Comment 3 Pranith Kumar K 2013-08-05 02:56:00 EDT
.landfill directory used to be present in root of the brick in earlier versions, now it is moved inside .glusterfs in root directory. This patch makes sure to filter .landfill directory in readdir of the mount.

Please look at for detailed explanation of other test cases.
Comment 4 spandura 2013-08-20 10:11:32 EDT
Verified the fix on the build :
glusterfs built on Aug 14 2013 09:04:38

Case1 :

Case2 :

Test Case1 and Test Case2 works fine.

Case3 : This is to be executed during upgrade testing
1. Before upgrade check ".landfill" directory to be present in <brick_abs_path>

2. After upgrade ".landfill" directory will be moved to ".glusterfs/landfill" . This happens when bricks are restarted. 

Changing the QA Contact to Sachi to test Case3.
Comment 5 spandura 2013-08-21 08:59:01 EDT
How to create .landfill directory
1. Create a replicate volume ( 1 x 2 ). Start the volume.
2. Create a fuse mount. From fuse mount execute:
for i in `seq 1 10`;do echo "Hello World $i" > file.$i ; mkdir testdir.$i ; echo "Hello World $i" > testdir.$i/file.$i ; done

3. Bring down brick1 .

4. From mount point delete few files and directories:
rm -f file.{1..3}
rm -rf testdir.{1..3}

5. Bring back brick1. 

6. Bring down brick0

7. From mount point delete few files and directories:
rm -f file.{7..10}
rm -rf testdir.{7..10}

8. Bring back brick0

9. On both the bricks check for .landfill directory.
Comment 6 Sachidananda Urs 2013-08-22 08:01:45 EDT
Verified on: glusterfs built on Aug 14 2013 09:04:38

After update from U5 -> 2.1 and starting the volume moves the .landfill directory from / to .glusterfs/landfill
Comment 7 Scott Haines 2013-09-23 18:35:53 EDT
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.

Note You need to log in before you can comment on or make changes to this bug.