>4GiB source delta assertion failure
- From
- Ilari Liusvaara <ilari.liusvaara@elisanet.fi>
- Date
- Jul 21, 2010, 23:16 UTC
- Message-ID
- <20100721231635.GA6387@LK-Perkele-V2.elisa-laajakaista.fi>
Yes, I know trying to delta-compress with 4GiB files is insane, but OTOH, assertion failures are bugs by defintion.
Delta source: <4GiB of zeroes> <random 64KiB block> Delta destination: <the same 64KiB block>
This was created using: $ dd if=/dev/urandom of=test-delta-target bs=64k count=1 $ dd if=test-delta-target of=test-delta-source bs=64k seek=64k
Now running
$ ./test-delta -d test-delta-source test-delta-target test-delta-delta
Crashes with (v1.7.2):
test-delta: diff-delta.c:285: create_delta_index: Assertion `packed_entry - (struct index_entry *)mem == entries' failed. Aborted
As note: The delta compression format does not allow delta compression to properly work in this case (since source offset would need to be 2^32 and biggest possible offset is 2^32-1), and thus the size of output should be on order of 66kB.
-Ilari