On 8/29/10 10:16 AM, martin f krafft wrote: > > What I think BackupPC is doing right now is: > > 1. It starts receiving a file > > 2. After a certain time, it has enough information to take a guess > at the corresponding pool file, and opens it. > > 3. What seems to happen now is weird: the FileIO method fileDeltaRxNext is > called repeatedly, but at the same time, the client keeps sending data, > not > checksums.
I haven't followed the code, but I think the idea is that if the file - or maybe the difference from the existing guessed match - fits in memory it doesn't need to write a tmp file before writing to the pool. I'm not sure if the rsync protocol allows switching from 'no file' on the receiving side to having checksums to match in mid-file even if the initial filename is correct and not a hash collision. > Here's what I think should happen instead: > > As soon as at least one candidate file in the pool is found: > > 1. Keep the received data (2×128k) in memory; > > 2. Somehow convince the peer that we actually have the file and that > it should continue sending block checksums, or however the rsync > protocol actually works; Not sure this is possible, and even if it is you still have to deal with hash collisions detected later. > Does this make sense? Only on bandwidth-restricted connections. On a LAN you can usually transfer as fast as the remote can read the file anyway. -- Les Mikesell lesmikes...@gmail.com ------------------------------------------------------------------------------ Sell apps to millions through the Intel(R) Atom(Tm) Developer Program Be part of this innovative community and reach millions of netbook users worldwide. Take advantage of special opportunities to increase revenue and speed time-to-market. Join now, and jumpstart your future. http://p.sf.net/sfu/intel-atom-d2d _______________________________________________ BackupPC-users mailing list BackupPC-users@lists.sourceforge.net List: https://lists.sourceforge.net/lists/listinfo/backuppc-users Wiki: http://backuppc.wiki.sourceforge.net Project: http://backuppc.sourceforge.net/