id summary reporter owner description type status priority milestone component version resolution keywords cc launchpad_bug 1228 backupdb and ext4 i_version/generation xattributes warner warner "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). " enhancement new normal undecided code-encoding 1.8.0 performance