gluster-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Gluster-devel] [RFC] on the fly GFID change for a existing file


From: Amar Tumballi
Subject: [Gluster-devel] [RFC] on the fly GFID change for a existing file
Date: Fri, 26 Apr 2013 15:37:55 +0530
User-agent: Mozilla/5.0 (X11; Linux x86_64; rv:17.0) Gecko/20130311 Thunderbird/17.0.4

Hi,

This is an extended discussion on patch http://review.gluster.org/4702

With this patch going in, a mount point can be made to access the files directly using the gfid of the files, and not just path.

We are planning to use this along with Changelog [1] for enhanced geo-replication feature we are planning to develop. Now, the good thing is, with these combination we have many benefits, which primarily includes not crawling the system to find the changes done in last N minutes.

But the challenge we have now is with the upgrading of the existing geo-replication setup to newer one, where we would need to keep the 'slave' volume's files to have the exact same GFID as that of 'master' volume. To achieve this, when we upgrade, we would need a *method* to change the GFID of the existing files in 'slave' volume on the fly.

We have couple of options:

1. delete the '.glusterfs/' directory from the slave volume and use the aux-gfid-path based mount to do the lookup (with proper GLUSTERFS_GFID env variable set), so it creates the gfid with new one. * needs a change in posix xlator to overwrite existing 'trusted.gfid' attribute too.

2. bring a setxattr() interface to change the gfid on the fly based on a virtual xattr. * needs extra check as the existing inode number (aka, gfid) suddenly changes, and we need to handle it gracefully.

Let me know if someone has better options, or can take a call on which is the better approach.

Regards,
Amar

[1] - http://review.gluster.org/4766



reply via email to

[Prev in Thread] Current Thread [Next in Thread]