[tahoe-dev] [tahoe-lafs] #1228: backupdb and ext4 i_version/generation xattributes

tahoe-lafs trac at tahoe-lafs.org
Wed Oct 20 00:20:49 UTC 2010


#1228: backupdb and ext4 i_version/generation xattributes
---------------------------+------------------------------------------------
 Reporter:  warner         |           Owner:  warner   
     Type:  enhancement    |          Status:  new      
 Priority:  major          |       Milestone:  undecided
Component:  code-encoding  |         Version:  1.8.0    
 Keywords:  performance    |   Launchpad Bug:           
---------------------------+------------------------------------------------
 I recently learned that several linux filesystems can track
 version/generation numbers for local files. We could use this
 information in the backupdb to improve the speed+reliability of
 detecting files that have not been modified since the last time we
 did a backup.

 {{{lsattr -v FOO.txt}}} shows a "version/generation number", and
 probably works for even old ext2 filesystems.

 [http://www.spinics.net/lists/linux-fsdevel/msg33753.html this] and
 [http://linux-ima.sourceforge.net/ this] talk about "mounting a
 filesystem with {{{i_version}}} support", and suggests that the
 following ext4 extended-attributes will become available:

  * {{{file.crtime}}} - actual file creation time
  * {{{file.i_generation}}} - inode generation number
  * {{{file.i_version}}} ("directories only") - inode data version number

 It's not yet clear to me what information is really available, or
 how one might get to it (especially from python), but this ticket is to
 remind me that "tahoe
 backup" would be a lot better if we could quickly and reliably
 determine that a file had not changed. The filesize+timestamp
 heuristic is useful, but it'd be nice to be able to do better. A
 real generation number would be ideal, if the kernel promises to
 update it reliably. A kernel-maintained hash of the filesystem contents
 would be great too (it would let us detect renames without reading the
 file contents).

-- 
Ticket URL: <http://tahoe-lafs.org/trac/tahoe-lafs/ticket/1228>
tahoe-lafs <http://tahoe-lafs.org>
secure decentralized storage


More information about the tahoe-dev mailing list