Re: [PATCHv5 3/3] gitweb: gravatar url cache
- From
Junio C Hamano <gitster@pobox.com>
- Date
- Jun 25, 2009, 00:01 UTC
- Message-ID
- <7vvdmlnpug.fsf@alter.siamese.dyndns.org>
- In-Reply-To
- <cb7bb73a0906241546x6b6164e7w4e6c6601d1119032@mail.gmail.com>
Giuseppe Bilotta <giuseppe.bilotta@gmail.com> writes:
Show 23 quoted lines
> On Thu, Jun 25, 2009 at 12:02 AM, Junio C Hamano<gitster@pobox.com> wrote: >> Giuseppe Bilotta <giuseppe.bilotta@gmail.com> writes: >> >>> Views which contain many occurrences of the same email address (e.g. >>> shortlog view) benefit from not having to recalculate the MD5 of the >>> email address every time. >>> --- >> >> Sign-off? > > Duh. > >> I think the cache is placed at the wrong level (it doesn't have to be a >> GRavatar_url_cache, but can be a general avatar_url_cache). > > I'm not sure about it. The URL depends on email and size (can you use > arrays as hash keys in Perl?) , and the email part might be the same > but the size part might differ across separate calls (in theory; in > practice avatars in a view are presently all the same size; but for > example if we were to autodetect email addresses in commit messages, > we might have both single- and double- sided avatars in the same > page). By hashing on email+size only we would lose the benefit of > cache when using the same avatar at separate sizes.
You can use nested hash, like:
$avatar_cache{$email}{$size}or
$avatar_cache{$size}{$email}but that is completely orthogonal to the issue of using a single cache shared across services, isn't it?