[PATCH v2 0/9] midx: stop duplicating info redundant with their sources

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Hi,

this patch series is a follow up to the recent patch series that started
to move the MIDX into its object source. It refactors the MIDX subsystem
so that we always read and write them via an ODB source. This ultimately
allows us to store a pointer to  the owning ODB source in the MIDX and
thus dedup some redundant information.

This series is built on top of e813a0200a7 (The fifteenth batch,
2025-07-28) with ps/object-store-midx at ec865d94d46 (midx: remove
now-unused linked list of multi-pack indices, 2025-07-15) merged into
it.

Changes in v2:
  - Fix a comment typo.
  - Introduce another commit that simplifies the calling convention for
    `link_alt_odb_entry()`.
  - Link to v1: https://lore.kernel.org/r/20250729-b4-pks-midx-deduplicate-source-info-v1-0-748db2eda3b5@xxxxxx

Thanks!

Patrick

---
Patrick Steinhardt (9):
      odb: store locality in object database sources
      odb: allow `odb_find_source()` to fail
      odb: return newly created in-memory sources
      odb: simplify calling `link_alt_odb_entry()`
      midx: drop redundant `struct repository` parameter
      midx: load multi-pack indices via their source
      midx: write multi-pack indices via their source
      midx: stop duplicating info redundant with its owning source
      midx: compute paths via their source

 builtin/commit-graph.c      |   4 ++
 builtin/multi-pack-index.c  |  31 +++++++---
 builtin/pack-objects.c      |   2 +-
 builtin/repack.c            |   7 ++-
 midx-write.c                | 116 +++++++++++++++++--------------------
 midx.c                      | 135 +++++++++++++++++++++-----------------------
 midx.h                      |  42 ++++++--------
 odb.c                       |  43 ++++++--------
 odb.h                       |  16 ++++--
 pack-bitmap.c               |  15 +++--
 pack-revindex.c             |  14 ++---
 packfile.c                  |  13 ++---
 repository.c                |   1 +
 t/helper/test-read-midx.c   |  31 +++++-----
 t/t5319-multi-pack-index.sh |   8 +--
 15 files changed, 239 insertions(+), 239 deletions(-)

Range-diff versus v1:

 1:  38e145e1e8 !  1:  d61e0702df odb: store locality in object database sources
    @@ odb.h: struct odb_source {
      	struct multi_pack_index *midx;
      
     +	/*
    -+	 * Figure out whether this is the local alternate of the owning
    ++	 * Figure out whether this is the local source of the owning
     +	 * repository, which would typically be its ".git/objects" directory.
     +	 * This local object directory is usually where objects would be
     +	 * written to.
 2:  bdf2e55514 =  2:  5f0a422b17 odb: allow `odb_find_source()` to fail
 3:  6e11c5ecb5 =  3:  698f8793fd odb: return newly created in-memory sources
 -:  ---------- >  4:  6fd1530502 odb: simplify calling `link_alt_odb_entry()`
 4:  52b0e420d1 =  5:  90d9dbb3f7 midx: drop redundant `struct repository` parameter
 5:  b1c200817a =  6:  2c4d45d912 midx: load multi-pack indices via their source
 6:  9b064ce6b2 =  7:  d4d7ccab0e midx: write multi-pack indices via their source
 7:  0553fb6b8a =  8:  9a6ce9872c midx: stop duplicating info redundant with its owning source
 8:  13c480bac9 =  9:  b814e2f328 midx: compute paths via their source

---
base-commit: ee2fd3d4b224c8145eeff04101ea6075560973e1
change-id: 20250729-b4-pks-midx-deduplicate-source-info-fcf3c08bfd53





[Index of Archives]     [Linux Kernel Development]     [Gcc Help]     [IETF Annouce]     [DCCP]     [Netdev]     [Networking]     [Security]     [V4L]     [Bugtraq]     [Yosemite]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Linux SCSI]     [Fedora Users]

  Powered by Linux