All of lore.kernel.org
 help / color / mirror / Atom feed
From: Thomas Gummerer <t.gummerer@gmail.com>
To: git@vger.kernel.org
Cc: gitster@pobox.com, trast@student.ethz.ch, mhagger@alum.mit.edu,
	pclouds@gmail.com, t.gummerer@gmail.com
Subject: [PATCH v3 0/3] Introduction of a ce_namelen field
Date: Wed, 11 Jul 2012 11:22:35 +0200	[thread overview]
Message-ID: <1341998558-8502-1-git-send-email-t.gummerer@gmail.com> (raw)
In-Reply-To: <7vy5mtlebz.fsf@alter.siamese.dyndns.org>

Thanks to Junio for reviewing v2 of this patch series.

The speedup coming from introducing the field exists, but is minimal,
here are the times for 1000 runs of git ls-files on the Webkit index,
first without the ce_namelen field, and then with the ce_namelen field.
$ time ./test.sh

real 4m40.895s
user 3m39.642s
sys 0m40.159s

$ time ./test.sh

real 4m34.872s
user 3m37.176s
sys 0m40.401s

1/3 is a bugfix for very long files which share at least 4096
characters in their filename. It also includes a test, tough I'm
not sure I have put it in the right place.

The other two patches are rerolls from v2 of this series.

[PATCH v3 1/3] read-cache.c: Handle long filenames correctly
[PATCH v3 2/3] Strip namelen out of ce_flags into a ce_namelen field
[PATCH v3 3/3] Replace strlen() with ce_namelen()

builtin/apply.c           |    3 ++-
builtin/blame.c           |    3 ++-
builtin/checkout.c        |    3 ++-
builtin/update-index.c    |    9 ++++++---
cache.h                   |   19 ++++++-------------
read-cache.c              |   62 +++++++++++++++++++++++++++++++++++++++-----------------------
t/t0007-long-filenames.sh |   62 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
tree.c                    |    7 ++++---
unpack-trees.c            |    5 +++--
9 files changed, 126 insertions(+), 47 deletions(-)

  reply	other threads:[~2012-07-11  9:23 UTC|newest]

Thread overview: 18+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2012-07-04  9:18 [PATCH/RFC] Replace ce_namelen() with a ce_namelen field Thomas Gummerer
2012-07-04 10:00 ` Thomas Rast
2012-07-04 10:01 ` Nguyen Thai Ngoc Duy
2012-07-04 10:07 ` Nguyen Thai Ngoc Duy
2012-07-04 19:26 ` Junio C Hamano
2012-07-06 16:07   ` Introduction of " Thomas Gummerer
2012-07-06 16:07     ` [PATCH/RFC v2 1/2] Strip namelen out of ce_flags into " Thomas Gummerer
2012-07-09  4:59       ` Junio C Hamano
2012-07-11  9:22         ` Thomas Gummerer [this message]
2012-07-11  9:22           ` [PATCH v3 1/3] read-cache.c: Handle long filenames correctly Thomas Gummerer
2012-07-11 11:34             ` Nguyen Thai Ngoc Duy
2012-07-11 16:33             ` Junio C Hamano
2012-07-11  9:22           ` [PATCH v3 2/3] Strip namelen out of ce_flags into a ce_namelen field Thomas Gummerer
2012-07-11  9:22           ` [PATCH v3 3/3] Replace strlen() with ce_namelen() Thomas Gummerer
2012-07-11 16:35             ` Junio C Hamano
2012-07-11 16:29         ` [PATCH/RFC v2 1/2] Strip namelen out of ce_flags into a ce_namelen field Junio C Hamano
2012-07-06 16:07     ` [PATCH/RFC v2 2/2] Replace strlen() with ce_namelen() Thomas Gummerer
2012-07-09  2:49       ` Junio C Hamano

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=1341998558-8502-1-git-send-email-t.gummerer@gmail.com \
    --to=t.gummerer@gmail.com \
    --cc=git@vger.kernel.org \
    --cc=gitster@pobox.com \
    --cc=mhagger@alum.mit.edu \
    --cc=pclouds@gmail.com \
    --cc=trast@student.ethz.ch \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.