Closed GoogleCodeExporter closed 8 years ago
[deleted comment]
Issue reproducible even with following latest Xdelta versions as well:
xdelta3-3.0.7.x86-32.exe
xdelta3-3.0.7.x86-64.exe
Original comment by thanga...@gmail.com
on 6 Aug 2013 at 12:10
Just to clarify - the given sample VCDIFF files are forward deltas in
incremental order, and merge command preserves this order.
Original comment by thanga...@gmail.com
on 6 Aug 2013 at 12:50
Note to developer: this issue happens because of recursion in
xd3_merge_source_copy. The code already has comments that this logic needs to
be re-worked because of inefficiency.
Original comment by jace...@gmail.com
on 19 Sep 2013 at 10:31
Hi, We are also seeing the same issue. xdelta "merge" fails when delta size increases. What's the expected release of this fix? Thanks in advance for your help.
Admittedly, the algorithm used in the "merge" command is not a fast one--and it can be improved to avoid recursion--but I have to place a higher priority on finishing the 64bithash improvements (issue 127). Until then, I'd like to recommend increasing the stack size of the program.
I tested this with my latest build using the MinGW toolchain and do not see a stack overflow, which means by default the MinGW stacksize is large enough for your test. Presumably the default stacksize of the MS VC++ toolchain used through release 3.0.9 was too small.
The version 3.0.10 release was also built with MinGW, so should address this specific test. I can raise the default used in the next release, if that will help. http://stackoverflow.com/questions/3557691/increase-stack-size-when-compiling-with-mingw
New releases 3.0.11 and 3.1.0 address this with a larger stack. Please update this bug if a still-larger stack is needed; eventually, the recursive algorithm should be replaced with something less stack-intensive.
Original issue reported on code.google.com by
thanga...@gmail.com
on 5 Aug 2013 at 11:47Attachments: