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

Re: Significant performance waste in git-svn and friends

From
David Kastrup <dak@gnu.org>
Date
Sep 5, 2007, 21:19 UTC
Message-ID
<85bqcghktl.fsf@lola.goethe.zz>
In-Reply-To
<7vd4wwj16d.fsf@gitster.siamese.dyndns.org>
Junio C Hamano <gitster@pobox.com> writes:
Show 10 quoted lines
> Mike Hommey <mh@glandium.org> writes:
>
>> The same things obviously apply to git-cvsimport and other scripts
>> calling git-hash-object a lot.
>
> I *obviously* hate this patch, as it makes this Porcelain
> command to be aware of the internal representation too much.
>
> I wonder if letting fast-import handle the object creation is an
> option, though.

I think it would be saner to give git-hash-object an operation mode that makes it usable as a pipe-controlled daemon, so that one needs not fork and exec for interning another object. That way, porcelain commands could keep one bidirectional pipe (feed object type and source and whether to use -w into git-hash-project, receive object id) to git-hash-object around until they finish.

-- 
David Kastrup, Kriemhildstr. 15, 44793 Bochum
Previous: Junio C HamanoNext: Patrick Doyle
Message 3 of 11 in “Significant performance waste in git-svn and friends”
  1. Mike HommeySep 5, 2007
  2. Junio C HamanoSep 5, 2007
  3. David KastrupSep 5, 2007
  4. Patrick DoyleSep 6, 2007
  5. Shawn O. PearceSep 6, 2007
  6. Shawn O. PearceSep 6, 2007
  7. Mike HommeySep 6, 2007
  8. Eric WongSep 6, 2007
  9. Shawn O. PearceSep 7, 2007
  10. Steven GrimmSep 7, 2007
  11. Mike HommeySep 7, 2007

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.