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

Re: [PATCH] fast-import: Stream very large blobs directly to pack

From
Shawn O. Pearce <spearce@spearce.org>
Date
Jan 29, 2010, 02:37 UTC
Message-ID
<20100129023701.GE20488@spearce.org>
In-Reply-To
<alpine.LFD.2.00.1001282125410.1681@xanadu.home>
Nicolas Pitre <nico@fluxnic.net> wrote:
Show 13 quoted lines
> On Thu, 28 Jan 2010, Shawn O. Pearce wrote:
> 
> > If a blob is larger than the configured big-file-threshold, instead
> > of reading it into a single buffer obtained from malloc, stream it
> > onto the end of the current pack file.  Streaming the larger objects
> > into the pack avoids the 4+ GiB memory footprint that occurs when
> > fast-import is processing 2+ GiB blobs.
> 
> Yeah.  I've had that item on my todo list for ages now.  This 
> big-file-threshold principle has to be applied to 'git add' too so a big 
> blob is stored in pack file form right away, and used to bypass delta 
> searching in 'git pack-objects', used to skip the diff machinery, and so 
> on.

Yea, there are a lot of places we should improve for bigger files. gfi just happened to be the first one I got a bug report on from a user...

-- 
Shawn.
Previous: Nicolas PitreNext: Junio C Hamano
Message 3 of 27 in “fast-import: Stream very large blobs directly to pack”
  1. fast-import: Stream very large blobs directly to packShawn O. Pearce, Jan 29, 2010
  2. Nicolas PitreJan 29, 2010
  3. Shawn O. PearceJan 29, 2010
  4. Junio C HamanoJan 29, 2010
  5. Shawn O. PearceJan 29, 2010
  6. fast-import: Stream very large blobs directly to packShawn O. Pearce, Jan 29, 2010
  7. Jakub NarebskiJan 29, 2010
  8. Shawn O. PearceJan 29, 2010
  9. A Large Angry SCMJan 29, 2010
  10. Junio C HamanoJan 30, 2010
  11. Sverre RabbelierJan 29, 2010
  12. Shawn O. PearceJan 29, 2010
  13. Sverre RabbelierJan 29, 2010
  14. Shawn O. PearceJan 29, 2010
  15. Junio C HamanoJan 30, 2010
  16. Junio C HamanoJan 30, 2010
  17. Junio C HamanoJan 30, 2010
  18. Shawn O. PearceFeb 1, 2010
  19. Junio C HamanoFeb 1, 2010
  20. Junio C HamanoFeb 4, 2010
  21. Shawn O. PearceFeb 4, 2010
  22. Junio C HamanoFeb 4, 2010
  23. Junio C HamanoFeb 4, 2010
  24. Shawn O. PearceFeb 4, 2010
  25. Nicolas PitreFeb 4, 2010
  26. fast-import: Document the core.bigFileThreshold configuration settingShawn O. Pearce, Feb 1, 2010
  27. Shawn O. PearceFeb 1, 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.