Craig Barratt wrote:
I'm currently perusing the sources to see if there is a way to work
around that.  Has anyone already investigated this?  Am I headed down a
dead-end?

Yes you are.

When rsync transfers the file list it doesn't contain file checksums
(unless you specify --checksum, which File::RsyncP doesn't support).
Also, the rsync whole-file checksum is different to the BackupPC
pool checksum, so it isn't useful for trying to find files in the
pool.

Yeah, I thought about that after I sent the email. The checksum/hash values aren't necessarily same algorithm.

It would therefore require an rsync whole file checksum => pool checksum lookup table/cache. Which I've seen references to...

http://backuppc.sourceforge.net/faq/BackupPC.html#rsync_checksum_caching

But that caching must be only for the life of that backup job?

One could store the rsync checksum in the pool file, but you still need to generate a quick lookup table. Or an alternate file hierarchy using rsync checksums (yuck!). Maybe a berkeley DB using tied hashes? But you'd want a way to remove trashed pool items and you'd need to handle write contention, because I'd assume you'd want a shared table. Even if all that is possible, is it possible to interface into the RsyncP module a way to say, "Oh, hey, I have a file that matches that whole file checksum right here"?




-------------------------------------------------------------------------
This SF.net email is sponsored by: Microsoft
Defy all challenges. Microsoft(R) Visual Studio 2005.
http://clk.atdmt.com/MRT/go/vse0120000070mrt/direct/01/
_______________________________________________
BackupPC-devel mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/backuppc-devel
http://backuppc.sourceforge.net/

Reply via email to