git/list[1] front-page[2] threads[3] people[4] search[5] about
 

>4GiB source delta assertion failure

From
ILIlari 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
Next: Nicolas Pitre
Message 1 of 2 in “>4GiB source delta assertion failure”
  1. Ilari LiusvaaraJul 21, 2010
  2. fix >4GiB source delta assertion failureNicolas Pitre, Aug 21, 2010

Read the whole thread, see it on lore, or plain text.

$ cat FOOTERMessages come from the public archive at lore.kernel.org/git, fetched every hour. The front page is chosen and written each morning by an AI editor and can be wrong; the threads themselves are the record. About and API. For agents: an MCP server at https://gitlist.dev/mcp, and any thread, story or person page as Markdown by adding .md to its URL (or sending Accept: text/markdown). Details in /llms.txt.