From: Derrick Stolee Date: Wed, 30 May 2018 19:18:24 GMT Subject: Re: [RFC PATCH 00/35] object-store: lookup_commit Message-ID: <6e18e6bb-cc11-a1b4-becb-4115df124284@gmail.com> In-Reply-To: On 5/29/2018 11:18 PM, Stefan Beller wrote: > On Tue, May 29, 2018 at 6:05 PM, Derrick Stolee wrote: >> On 5/29/2018 8:47 PM, Stefan Beller wrote: >>> This applies on the merge of nd/commit-util-to-slab and >>> sb/object-store-grafts, >>> and is available at http://github.com/stefanbeller/ as branch >>> object-store-lookup-commit >>> as the merge has some merge conflicts as well as syntactical conflicts >>> (upload-pack.c >>> and fetch-pack.c introduce new calls of functions that would want to take >>> a repository struct >>> in the object-store-grafts series) >>> >>> As layed out in >>> https://public-inbox.org/git/20180517225154.9200-1-sbeller@google.com/ >>> this is getting close to finishing the set of object store series though >>> the last >>> unfinished part of this RFC hints at new work on the plate: >>> * To give this series a nice polish, we'd want to convert parse_commit, >>> too. >>> But that requires the conversion of the new commit graph. Maybe we need >>> to split this series into 2. >> >> I'll take a look at this series tomorrow. I've been working in >> ds/commit-graph-fsck to make many of the methods take a 'struct commit_graph >> *' parameter, which could easily be 'r->commit_graph' for a 'struct >> the_repository *r' instead of the global 'commit_graph'. Those graph-local >> methods will make the transformation to be repo-local a lot easier. (There >> still may be some need to insert a repository, though.) >> >> Since you are working on the commit-slab stuff in this patch, I'll (continue >> to) delay my patch series on using the commit-slab for generation numbers to >> avoid collisions with your work. > This series touches the commit slabs in the last few commits only. > I don't think there will be huge conflicts, as all I had to do was > move the definition from a global to inside the parsed object store. I went through the whole series and didn't find any issue with the code. The commit messages reference coccinelle scripts that I never saw, so those should be struck from the messages. If anyone else plans to review, these two commits are worth special attention compared to the others: [PATCH 27/35] commit-slabs: remove realloc counter outside of slab struct [PATCH 28/35] commit.c: migrate the commit buffer to the parsed object store I found no issue with them, but they do actually change behavior slightly as opposed to the other commits which have no change other than to relax the dependence on the_repository as a global. I also like the pattern of storing the slabs inside the parsed object structure in the_repository. I'll use a similar pattern when looking into using slabs for generation number. For Junio: I know this will conflict with ds/commit-graph-fsck (specifically, I add new references to lookup_commit() and manipulate parse_commit_gently()). If this series is ready to be queued quickly, I can rebase my v4 onto these commits as they are placed into 'pu' (and please eject ds/commit-graph-fsck at that time). Thanks, -Stolee