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

Re: What to expect after 0.99.8

From
Daniel Barkalow <barkalow@iabervon.org>
Date
Oct 4, 2005, 04:13 UTC
Message-ID
<Pine.LNX.4.63.0510032306190.23242@iabervon.org>
In-Reply-To
<7v1x32l0gz.fsf@assigned-by-dhcp.cox.net>
On Mon, 3 Oct 2005, Junio C Hamano wrote:
Show 15 quoted lines
> Daniel Barkalow <barkalow@iabervon.org> writes:
> 
> > The code in ssh-fetch already does parallel fetching, actually (only over 
> > one connection, but requests are sent before responses are read), so 
> > multiple requests are in progress at the same time.
> 
> This reminds me of one patch:
> 
>     From: Dan Aloni <da-x@monatomic.org>
>     Subject: [PATCH] Fix git+ssh's indefinite halts during long fetches
>     Date: Sat, 1 Oct 2005 21:39:42 +0300
>     Message-ID: <20051001183942.GA2099@localdomain>
> 
> I'd appreciate it if you had a chance to take a look at it and
> comment on it.

I think it's overly hacky; we should be able, in prefetch, to check whether we've stuffed in a lot of hashes already, and actually read an object out before requesting another; there's nothing in the fetch contract that says that an object can't become available at some random time between the start of the fetch and when it gets requested with fetch(). (In fact, I had a pack-exchange version of the ssh stuff which would notice that you have certain things and you're looking for a commit, and get a bunch of stuff you probably want as a pack before you actually ask for it, but Linus beat me on that one with send-pack/upload-pack.)

I think that a limit of 100 objects in transit is about right, because the requests for 100 objects fits well within 4K and I expect that we commonly have small enough objects that we need to queue up a relatively large number of requests to maintain streaming.

I've got a patch, which I'll send in the next email.
	-Daniel
*This .sig left intentionally blank*
Previous: H. Peter AnvinNext: Alan Chandler
Message 29 of 39 in “What to expect after 0.99.8”
  1. Junio C HamanoOct 3, 2005
  2. A Large Angry SCMOct 3, 2005
  3. Junio C HamanoOct 3, 2005
  4. Enable and fix support for base less merges.Fredrik Kuivinen, Oct 3, 2005
  5. Josef WeidendorferOct 3, 2005
  6. Junio C HamanoOct 4, 2005
  7. Josef WeidendorferOct 4, 2005
  8. Junio C HamanoOct 4, 2005
  9. Random documentation fixesJonas Fonseca, Oct 3, 2005
  10. Daniel BarkalowOct 3, 2005
  11. Martin CoxallOct 3, 2005
  12. Nick HengeveldOct 3, 2005
  13. Daniel BarkalowOct 3, 2005
  14. Junio C HamanoOct 3, 2005
  15. Daniel BarkalowOct 3, 2005
  16. Junio C HamanoOct 3, 2005
  17. Linus TorvaldsOct 3, 2005
  18. Dan AloniOct 4, 2005
  19. Daniel BarkalowOct 4, 2005
  20. Matthias UrlichsOct 4, 2005
  21. H. Peter AnvinOct 4, 2005
  22. Matthias UrlichsOct 4, 2005
  23. H. Peter AnvinOct 4, 2005
  24. Junio C HamanoOct 4, 2005
  25. Linus TorvaldsOct 5, 2005
  26. H. Peter AnvinOct 5, 2005
  27. Daniel BarkalowOct 4, 2005
  28. H. Peter AnvinOct 4, 2005
  29. Daniel BarkalowOct 4, 2005
  30. Alan ChandlerOct 3, 2005
  31. H. Peter AnvinOct 3, 2005
  32. Greg KHOct 4, 2005
  33. H. Peter AnvinOct 5, 2005
  34. Matthias UrlichsOct 3, 2005
  35. Chuck LeverOct 4, 2005
  36. Junio C HamanoOct 4, 2005
  37. Fredrik KuivinenOct 4, 2005
  38. Fredrik KuivinenOct 5, 2005
  39. Junio C HamanoOct 5, 2005

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.