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

Re: read-for-fill and caching in gitweb (Re: kernel.org mirroring)

From
Jakub Narebski <jnareb@gmail.com>
Date
Dec 29, 2006, 10:40 UTC
Message-ID
<200612291140.46909.jnareb@gmail.com>
In-Reply-To
<20061229032126.GE6558@localhost>
Robert Fitzsimons wrote:
Show 9 quoted lines
> Here are the mean (and standard deviation) in milliseconds for those
> pages using a few different versions of gitweb.
> 
>                  project_list   summary  shortlog        log
> v267                  173 1.6  1141 8.8   795 5.0   919  1.9
> 1.4.4.3               220 2.3   397 2.4   930 4.2  1113 56.9
> 1.5.0.rc0.g4a4d       226 1.9   292 1.7   352 4.0   491  6.7
> 1.5.0.rc0.g4a4d        60 1.0   131 0.7   195 1.2   347  3.7
> (mod_perl)
> I'll look into the increase in time for the project_list in more recent
> versions of gitweb, tomorrow.

It is simply the case that new features cost more. Namely in earlier versions of gitweb Last Change time was taken from HEAD (from current branch), in newer we check all branches (using git-for-each-ref). For published public repository it migh make sense to pack also heads (make them packed refs).

I was thinking about making this a gitweb %feature, allowing gitweb administrator to chose if Last Change is taken from all branches (as it is now), from HEAD (as it was before), or from given branch (for example master).

Another thing that might made small increase in time is checking if project is to be visible to gitweb ($export_ok and $strict_export).

-- 
Jakub Narebski
Poland
Previous: Robert FitzsimonsNext: Martin Langhoff
Message 3 of 6 in “read-for-fill and caching in gitweb (Re: kernel.org mirroring)”
  1. Martin LanghoffDec 28, 2006
  2. Robert FitzsimonsDec 29, 2006
  3. Jakub NarebskiDec 29, 2006
  4. Martin LanghoffDec 29, 2006
  5. Jakub NarebskiDec 29, 2006
  6. Robert FitzsimonsDec 29, 2006

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.