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

Re: [PATCH] Avoid errors from git-rev-parse in gitweb blame (take 2)

From
RGRafael Garcia-Suarez <rgarciasuarez@gmail.com>
Date
Jun 3, 2008, 14:59 UTC
Message-ID
<b77c1dce0806030759w48045055if7636e950b14c977@mail.gmail.com>
In-Reply-To
<484553E8.4050007@gmail.com>
2008/6/3 Lea Wiemann <lewiemann@gmail.com>:
Show 13 quoted lines
> Rafael Garcia-Suarez wrote:
>>
>> Finally, to avoid forking git-rev-parse too many times, cache its
>> results in a new hash %parent_commits.
>
> I'm not too happy with this:
>
> 1) Minor point: I'm working on caching for the backend right now (IOW,
> basically what you're doing, just centralized in a separate module), so
> you're essentially duplicating work, and you're making it (a little) harder
> for me to refactor gitweb since I have to rip out your cache code.  Those
> few lines won't hurt, but in general I suggest that nobody make any larger
> efforts to cache stuff in gitweb for the next few weeks.
Sorry for that. I failed to consider that your work was applying there as well.
Show 7 quoted lines
> 2) Major point: You're still forking a lot.  The Right Thing is to condense
> everything into a single call -- I believe "git-rev-list --parents --no-walk
> hash hash hash..." is correct and easily parsable. Its output seems to be
> lines of
>    hash parent_1 parent_2 ... parent_n
> with n >= 0.  Can you implement that?  It would be very useful and also
> reusable for me!

Ok, I see what you mean -- but I suppose that's the kind of information that would be nicely abstracted out somewhere. At least I would put it in a sub. And that sub would fit perfectly in your caching module, too! Looking at the source, a generic git-rev-list wrapper could be used.

If you want I can produce a patch against your version, but I'm afraid I'll end up being a bit short on time, so I might be slow to do it.

Show 6 quoted lines
> P.S.: I believe that the usual way to post follow-up patches is to label
> them [PATCH vN] for N >= 2 in the subject (since "take 2" shouldn't be part
> of the commit message), and to send them as In-reply-to a message in the
> original thread -- just provide git-send-email with the Message-ID of the
> message you want to reply to.  </nitpick>
>
Ok, noted. Also, next time, I'll send smaller patches.
Previous: Lea Wiemann
Message 3 of 3 in “Avoid errors from git-rev-parse in gitweb blame (take 2)”
  1. Avoid errors from git-rev-parse in gitweb blame (take 2)Rafael Garcia-Suarez, Jun 3, 2008
  2. Lea WiemannJun 3, 2008
  3. Rafael Garcia-SuarezJun 3, 2008

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.