gluster-devel
[Top][All Lists]
Advanced

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

Re: [Gluster-devel] file version on glusterfs using libgit


From: Niels de Vos
Subject: Re: [Gluster-devel] file version on glusterfs using libgit
Date: Fri, 8 Mar 2013 10:55:57 +0100
User-agent: Mutt/1.5.20 (2009-12-10)

On Thu, Mar 07, 2013 at 12:54:41AM -0500, Shishir Gowda wrote:
> Hi All,
> 
> Was playing around with git on glusterfs volume, to provide was of file 
> version support.
> 
> And initial run is encouraging.
> 
> A brief overview what was tried:
> 
> Approach 1: Glusterfs volume as a git repo
> 
> 1. created a 2 brick distribute volume
> 2. inited a git repo on fuse volume
> 3. created files, committed them in git.
> 4. Modified files, and committed them again
> 5. Did branch check-outs, to simulate versions @ point in time
> 6. reset branch heads, and was able access older version of files (after a 
> stash).
> 7. Was able to create files/dirs/symlinks/hardlinks
> 8. Both NFS/FUSE clients were used.
> 
> Approach 2: Glusterfs bricks as git repo's
> 
> 1. created a 2 brick distribute volume
> 2. inited git repo on brick1
> 3. inited git repo on brick2
> 4. created files, committed the relevant brick's git.
> 5. Modified files, and committed them again on brick's git
> 6. Did branch check-outs, to simulate versions @ point in time on individual 
> bricks
> 7. reset branch heads, and was able access older version of files (after a 
> stash).
> 8. Was able to create files/dirs/symlinks/hardlinks
> 9. Both NFS/FUSE clients were used.
> 
> Buoyed by this, will start prototyping integration of libgit2 as xlator for 
> file version support.
> 
> There are 3 approaches to consider:
> 
> 1. Load git xlator on clients volfiles
> 2. Load git xlator on server volfiles
> 3. Replace posix interface with git interface.
> 
> Please provide feedback, on what would be more desirable.

Very interesting! Option 2 makes most sense to me, the posix xlator 
contains some access checks and such, which you probably should not need 
to duplicate.

Have you thought about making the previous version accessible through 
the glusterfs/nfs mount? Other vendors seem to have a .snapshot 
directory with previous versions, would something like that be possible?  
Users would be able to recover deleted files themselves that way.

Also, I do not know if git stores xattrs and their changes...

Cheers,
Niels



reply via email to

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