git@vger.kernel.org mailing list mirror (one of many)
 help / color / mirror / code / Atom feed
* [RFC PATCH 00/19] object store: grafts and shallow.
@ 2018-05-15 23:42 Stefan Beller
  2018-05-15 23:42 ` [PATCH 01/19] object-store: move object access functions to object-store.h Stefan Beller
                   ` (19 more replies)
  0 siblings, 20 replies; 40+ messages in thread
From: Stefan Beller @ 2018-05-15 23:42 UTC (permalink / raw)
  To: git; +Cc: Stefan Beller

This applies on top of sb/object-store-alloc[1], and is the next part of the
object store series. 

I think we're getting close to actually being done in the object store series,
as the next series to build on top of this will convert the
lookup_{object, commit, ...} functions.

However I marked this series as RFC, as I expect heavy conflicts with the
code base. sb/object-store-alloc builds on an older base of the code base
and there have been some series that will conflict with this one.
For example the patch to migrate path functions into a repository world
will collide with one of Dschos series as he added another path helper
function there. I am happy to reroll on top of that, but for now I chose
sb/object-store-alloc to keep the momentum in the object-store series'.

There is another object store series that is not part of the critical path:
There is a mem leak in the pack files stored in the raw object store.
Upon free'ing the repository we do not free its pack files. We cannot
free the packfiles, as otherwise the bitmap code would have dangling
pointers into packfiles that no longer exists, leading to segfaults.
So we'll need to have an object store series covering the bitmap code.
I have something local, which I'll send out shortly.

Thanks,
Stefan

[1] with the latest patch replaced as in
    https://public-inbox.org/git/20180515214842.108713-1-sbeller@google.com/

Brandon Williams (3):
  commit: convert commit_graft_pos() to handle arbitrary repositories
  commit: convert register_commit_graft to handle arbitrary repositories
  commit: convert read_graft_file to handle arbitrary repositories

Jonathan Nieder (6):
  object: move grafts to object parser
  commit: add repository argument to commit_graft_pos
  commit: add repository argument to register_commit_graft
  commit: add repository argument to read_graft_file
  commit: add repository argument to prepare_commit_graft
  commit: add repository argument to lookup_commit_graft

Stefan Beller (10):
  object-store: move object access functions to object-store.h
  shallow: add repository argument to set_alternate_shallow_file
  shallow: add repository argument to register_shallow
  shallow: add repository argument to check_shallow_file_for_update
  shallow: add repository argument to is_repository_shallow
  cache: convert get_graft_file to handle arbitrary repositories
  path.c: migrate git_path_ to take a repository argument
  shallow: migrate shallow information into the object parser
  commit: allow prepare_commit_graft to handle arbitrary repositories
  commit: allow lookup_commit_graft to handle arbitrary repositories

 apply.c                  |   1 +
 archive-tar.c            |   1 +
 archive-zip.c            |   1 +
 archive.c                |   1 +
 blame.c                  |   9 ++-
 branch.c                 |  14 ++---
 builtin/blame.c          |   4 +-
 builtin/cat-file.c       |   1 +
 builtin/checkout.c       |   1 +
 builtin/clone.c          |   1 +
 builtin/commit-tree.c    |   1 +
 builtin/commit.c         |  38 ++++++-------
 builtin/describe.c       |   1 +
 builtin/difftool.c       |   1 +
 builtin/fast-export.c    |   1 +
 builtin/fetch.c          |   7 ++-
 builtin/fmt-merge-msg.c  |   1 +
 builtin/hash-object.c    |   1 +
 builtin/log.c            |   1 +
 builtin/ls-tree.c        |   1 +
 builtin/merge-tree.c     |   1 +
 builtin/merge.c          |  37 ++++++------
 builtin/mktag.c          |   1 +
 builtin/mktree.c         |   1 +
 builtin/notes.c          |   1 +
 builtin/pack-objects.c   |   6 +-
 builtin/prune.c          |   3 +-
 builtin/pull.c           |   4 +-
 builtin/receive-pack.c   |   3 +-
 builtin/reflog.c         |   1 +
 builtin/remote.c         |   1 +
 builtin/reset.c          |   2 +-
 builtin/rev-list.c       |   1 +
 builtin/rev-parse.c      |   3 +-
 builtin/show-ref.c       |   1 +
 builtin/tag.c            |   1 +
 builtin/unpack-file.c    |   1 +
 builtin/unpack-objects.c |   1 +
 builtin/verify-commit.c  |   1 +
 bulk-checkin.c           |   1 +
 bundle.c                 |   1 +
 cache-tree.c             |   1 +
 cache.h                  | 119 +--------------------------------------
 combine-diff.c           |   1 +
 commit.c                 |  77 +++++++++++++------------
 commit.h                 |  10 ++--
 config.c                 |   1 +
 convert.c                |   1 +
 diff.c                   |   1 +
 diffcore-rename.c        |   1 +
 dir.c                    |   1 +
 entry.c                  |   1 +
 environment.c            |   8 +--
 fetch-pack.c             |   9 +--
 fsck.c                   |   3 +-
 git.c                    |   2 +-
 grep.c                   |   1 +
 list-objects-filter.c    |   1 +
 list-objects.c           |   1 +
 log-tree.c               |   1 +
 mailmap.c                |   1 +
 match-trees.c            |   1 +
 merge-blobs.c            |   1 +
 merge-recursive.c        |   1 +
 notes-cache.c            |   1 +
 notes-merge.c            |   1 +
 notes.c                  |   1 +
 object-store.h           | 117 ++++++++++++++++++++++++++++++++++++++
 object.c                 |   4 ++
 object.h                 |  10 ++++
 pack-bitmap-write.c      |   1 +
 packfile.h               |   5 ++
 path.c                   |  18 +++---
 path.h                   |  40 ++++++++++---
 read-cache.c             |   1 +
 ref-filter.c             |   1 +
 refs.c                   |   1 +
 remote-testsvn.c         |   1 +
 remote.c                 |   1 +
 repository.h             |   5 ++
 rerere.c                 |   8 ++-
 revision.c               |   1 +
 send-pack.c              |   7 ++-
 sequencer.c              |  38 +++++++------
 shallow.c                |  74 ++++++++++++------------
 submodule-config.c       |   1 +
 tag.c                    |   1 +
 tree-walk.c              |   1 +
 tree.c                   |   1 +
 unpack-trees.c           |   1 +
 upload-pack.c            |  10 ++--
 walker.c                 |   1 +
 wt-status.c              |   8 +--
 xdiff-interface.c        |   1 +
 94 files changed, 450 insertions(+), 314 deletions(-)

-- 
2.17.0.582.gccdcbd54c44.dirty


^ permalink raw reply	[flat|nested] 40+ messages in thread

end of thread, other threads:[~2018-05-17 22:53 UTC | newest]

Thread overview: 40+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2018-05-15 23:42 [RFC PATCH 00/19] object store: grafts and shallow Stefan Beller
2018-05-15 23:42 ` [PATCH 01/19] object-store: move object access functions to object-store.h Stefan Beller
2018-05-15 23:42 ` [PATCH 02/19] object: move grafts to object parser Stefan Beller
2018-05-15 23:42 ` [PATCH 03/19] commit: add repository argument to commit_graft_pos Stefan Beller
2018-05-15 23:42 ` [PATCH 04/19] commit: add repository argument to register_commit_graft Stefan Beller
2018-05-15 23:42 ` [PATCH 05/19] commit: add repository argument to read_graft_file Stefan Beller
2018-05-15 23:42 ` [PATCH 06/19] commit: add repository argument to prepare_commit_graft Stefan Beller
2018-05-15 23:42 ` [PATCH 07/19] commit: add repository argument to lookup_commit_graft Stefan Beller
2018-05-15 23:42 ` [PATCH 08/19] shallow: add repository argument to set_alternate_shallow_file Stefan Beller
2018-05-15 23:42 ` [PATCH 09/19] shallow: add repository argument to register_shallow Stefan Beller
2018-05-15 23:42 ` [PATCH 10/19] shallow: add repository argument to check_shallow_file_for_update Stefan Beller
2018-05-15 23:42 ` [PATCH 11/19] shallow: add repository argument to is_repository_shallow Stefan Beller
2018-05-15 23:42 ` [PATCH 12/19] commit: convert commit_graft_pos() to handle arbitrary repositories Stefan Beller
2018-05-15 23:42 ` [PATCH 13/19] commit: convert register_commit_graft " Stefan Beller
2018-05-15 23:42 ` [PATCH 14/19] commit: convert read_graft_file " Stefan Beller
2018-05-15 23:42 ` [PATCH 15/19] cache: convert get_graft_file " Stefan Beller
2018-05-15 23:42 ` [PATCH 16/19] path.c: migrate git_path_ to take a repository argument Stefan Beller
2018-05-15 23:42 ` [PATCH 17/19] shallow: migrate shallow information into the object parser Stefan Beller
2018-05-15 23:42 ` [PATCH 18/19] commit: allow prepare_commit_graft to handle arbitrary repositories Stefan Beller
2018-05-15 23:42 ` [PATCH 19/19] commit: allow lookup_commit_graft " Stefan Beller
2018-05-17 22:51 ` [PATCH 00/19] object store: grafts and shallow Stefan Beller
2018-05-17 22:51   ` [PATCH 01/19] object-store: move object access functions to object-store.h Stefan Beller
2018-05-17 22:51   ` [PATCH 02/19] object: move grafts to object parser Stefan Beller
2018-05-17 22:51   ` [PATCH 03/19] commit: add repository argument to commit_graft_pos Stefan Beller
2018-05-17 22:51   ` [PATCH 04/19] commit: add repository argument to register_commit_graft Stefan Beller
2018-05-17 22:51   ` [PATCH 05/19] commit: add repository argument to read_graft_file Stefan Beller
2018-05-17 22:51   ` [PATCH 06/19] commit: add repository argument to prepare_commit_graft Stefan Beller
2018-05-17 22:51   ` [PATCH 07/19] commit: add repository argument to lookup_commit_graft Stefan Beller
2018-05-17 22:51   ` [PATCH 08/19] shallow: add repository argument to set_alternate_shallow_file Stefan Beller
2018-05-17 22:51   ` [PATCH 09/19] shallow: add repository argument to register_shallow Stefan Beller
2018-05-17 22:51   ` [PATCH 10/19] shallow: add repository argument to check_shallow_file_for_update Stefan Beller
2018-05-17 22:51   ` [PATCH 11/19] shallow: add repository argument to is_repository_shallow Stefan Beller
2018-05-17 22:51   ` [PATCH 12/19] commit: convert commit_graft_pos() to handle arbitrary repositories Stefan Beller
2018-05-17 22:51   ` [PATCH 13/19] commit: convert register_commit_graft " Stefan Beller
2018-05-17 22:51   ` [PATCH 14/19] commit: convert read_graft_file " Stefan Beller
2018-05-17 22:51   ` [PATCH 15/19] cache: convert get_graft_file " Stefan Beller
2018-05-17 22:51   ` [PATCH 16/19] path.c: migrate global git_path_* to take a repository argument Stefan Beller
2018-05-17 22:51   ` [PATCH 17/19] shallow: migrate shallow information into the object parser Stefan Beller
2018-05-17 22:51   ` [PATCH 18/19] commit: allow prepare_commit_graft to handle arbitrary repositories Stefan Beller
2018-05-17 22:51   ` [PATCH 19/19] commit: allow lookup_commit_graft " Stefan Beller

Code repositories for project(s) associated with this public inbox

	https://80x24.org/mirrors/git.git

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).