Closed GoogleCodeExporter closed 9 years ago
I expect this means 64bit I/O is broken. Will fix.
Original comment by dotdotis...@gmail.com
on 12 Dec 2006 at 6:01
This appears to be a more general problem, perhaps only on windows. It is not
limited to files >4GB. However, all of my tests with "smallish" files (under 5
MB)
have worked just fine.
While differencing two large but sub-4GB files (file1.bin 3,375,965,696 bytes;
file2.bin 3,358,860,800 bytes), everything starts out okay but then I get this.
C:\temp>xdelta3 -ev -s file1.bin file2.bin file2.VCDIFF
<snip>
xdelta3: 8187: in 262 KB: out 26 B: total in 2146 MB: out 2690 KB: 79 ms
xdelta3: 8188: in 262 KB: out 26 B: total in 2146 MB: out 2690 KB: 62 ms
xdelta3: 8189: in 262 KB: out 26 B: total in 2146 MB: out 2690 KB: 94 ms
xdelta3: 8190: in 262 KB: out 26 B: total in 2147 MB: out 2690 KB: 94 ms
xdelta3: 8191: in 262 KB: out 26 B: total in 2147 MB: out 2690 KB: 16 ms
xdelta3: seek failed: file1.bin: Invalid argument
xdelta3: getblk failed: Invalid argument
I am pretty certain this is not a hardware issue, as this machine is fine in
all
other respects. Running diagnostic tools turns up no disk, RAM, or other
hardware
issues.
How can I further help diagnose this one? I am not much of a C/C++ programmer,
but I
do have Vistual Studio 2003 (with the included C/C++ debugger). What form of
debug
output would be most useful?
Finally, do you have a verbal description of the string-matching algorithm used
in
Xdelta3 anywhere? Is it similar to the rsync "rolling checksum", or does it
only
search within the specified window?
Thanks for the great work... a "standards-compliant" delta compression solution
is
sorely needed IMHO.
Original comment by malay...@gmail.com
on 12 Dec 2006 at 3:48
This should be fixed in 3.0i, see http://xdelta.org
Original comment by dotdotis...@gmail.com
on 17 Dec 2006 at 12:28
I confirm this is working with two slightly different 4.4 GB files on windows.
The
resulting VCDIFF output was just 586 KB, which seems sensible, as I created
these
test files by sticking a 240 KB file in the middle of two hude GB files.
Original comment by malay...@gmail.com
on 4 Jan 2007 at 10:56
Original issue reported on code.google.com by
malay...@gmail.com
on 11 Dec 2006 at 9:19