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

Re: [PATCH 1/6] read-cache: use sha1file for sha1 calculation

From
Junio C Hamano <gitster@pobox.com>
Date
Feb 6, 2012, 07:34 UTC
Message-ID
<7vsjio8leo.fsf@alter.siamese.dyndns.org>
In-Reply-To
<1328507319-24687-1-git-send-email-pclouds@gmail.com>
Nguyễn Thái Ngọc Duy  <pclouds@gmail.com> writes:
> Signed-off-by: Nguyễn Thái Ngọc Duy <pclouds@gmail.com>

Having no explanation on any of the patch in the series without cover letter makes it hard to comment on anything, and not having any numbers makes it even harder after guessing that this is about some performance tweaks for 2M entry index cases.

This is open source, and I wouldn't stop you from spending time on anything that interests you.

But having said that, if you have extra Git time, I would still rather see you spend it first on tying up loose ends of your topics in flight and on helping others that touch parts that are related to areas that you have already thought about, namely:

 (1) nd/commit-ignore-i-t-a, which I think should be marketted as fixing
     an earlier UI mistake and presented with a clean migration path to
     make the updated behaviour the default in the future; and
 (2) the negative pathspec thing that resurfaced in disguise as Albert
     Yale's "grep --exclude" series.

than playing with the approach of this series. The two reasons I suspect that spending your time on this series will give us much less value than the above two topics out of you are:

 (1) While I think 2M-entry index is an interesting issue, it does not
     affect most of the people; and more importantly
 (2) I think the proper way to handle 2M-entry index case is to avoid
     having to write and read the whole 2M-entry as a flat table in the
     first place, not by weakening how its integrity is assured in order
     to micro-tweak the read/write efficiency without re-examining the
     flatness of the current in-core index [*1*].

The first patch that reuses the existing csum-file API to older code that was written before csum-file was invented is probably a good thing to do, though, independent of the 2M-entry issue.

Thanks.
[Footnote]

*1* A possible approach might be to stuff unmodified trees in the index without exploding them into its components, and as entries are modified, lazily expand these "tree" entries, while ensuring the "unmodified" parts remain unmodified by turning the files in the working tree read-only and requiring the user to say "git edit" or "git open" or something before starting to edit. But as I said, I consider this not an ultra-urgent issue, so I haven't thought things through yet.

Previous: Dave ZarzyckiNext: Nguyen Thai Ngoc Duy
Message 19 of 20 in “read-cache: use sha1file for sha1 calculation”
  1. 1/6 read-cache: use sha1file for sha1 calculationNguyễn Thái Ngọc Duy, Feb 6, 2012
  2. 2/6 csum-file: make sha1 calculation optionalNguyễn Thái Ngọc Duy, Feb 6, 2012
  3. 3/6 Stop producing index version 2Nguyễn Thái Ngọc Duy, Feb 6, 2012
  4. Junio C HamanoFeb 6, 2012
  5. Shawn PearceFeb 7, 2012
  6. Nguyen Thai Ngoc DuyFeb 7, 2012
  7. Nguyen Thai Ngoc DuyFeb 7, 2012
  8. Junio C HamanoFeb 7, 2012
  9. Thomas RastFeb 7, 2012
  10. 4/6 Introduce index version 4 with global flagsNguyễn Thái Ngọc Duy, Feb 6, 2012
  11. 5/6 Allow to use crc32 as a lighter checksum on indexNguyễn Thái Ngọc Duy, Feb 6, 2012
  12. Shawn PearceFeb 7, 2012
  13. Dave ZarzyckiFeb 7, 2012
  14. Dave ZarzyckiFeb 7, 2012
  15. 6/6 Automatically switch to crc32 checksum for index when it's too largeNguyễn Thái Ngọc Duy, Feb 6, 2012
  16. Dave ZarzyckiFeb 6, 2012
  17. Nguyen Thai Ngoc DuyFeb 6, 2012
  18. Dave ZarzyckiFeb 6, 2012
  19. Junio C HamanoFeb 6, 2012
  20. Nguyen Thai Ngoc DuyFeb 6, 2012

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.