Re: [PATCH 2/2] serialize collection of refs that contain submodule changes

2016-09-19 Thread Junio C Hamano
Heiko Voigt writes: > I am not sure if I understand you correctly here. With the "ref cache layer" > you are referring to add_submodule_odb() which is called indirectly from > submodule_needs_pushing()? Those revs are only used to check whether the hash > we need on the remote side exists in the

Re: [PATCH 2/2] serialize collection of refs that contain submodule changes

2016-09-19 Thread Heiko Voigt
Hi, On Fri, Sep 16, 2016 at 10:47:46AM -0700, Junio C Hamano wrote: > One thing that makes me worried is how the ref cache layer interacts > with this. I see you first call push_unpushed_submodules() when > ON_DEMAND is set, which would result in pushes in submodule > repositories, updating their

Re: [PATCH 2/2] serialize collection of refs that contain submodule changes

2016-09-16 Thread Junio C Hamano
Heiko Voigt writes: > diff --git a/submodule.c b/submodule.c > index b04c066..a15e346 100644 > --- a/submodule.c > +++ b/submodule.c > @@ -627,24 +627,31 @@ static void free_submodules_sha1s(struct string_list > *submodules) > string_list_clear(submodules, 1); > } > > -int find_unpushed

Re: [PATCH 2/2] serialize collection of refs that contain submodule changes

2016-09-14 Thread Stefan Beller
On Wed, Sep 14, 2016 at 12:46 PM, Heiko Voigt wrote: > On Wed, Sep 14, 2016 at 07:51:30PM +0200, Heiko Voigt wrote: >> Here are some numbers (using the my development clone of git >> itself) from my local machine: >> >> rm -rf && mkdir && >> (cd && git init) && >> time git push --mirror >> >>

Re: [PATCH 2/2] serialize collection of refs that contain submodule changes

2016-09-14 Thread Heiko Voigt
On Wed, Sep 14, 2016 at 07:51:30PM +0200, Heiko Voigt wrote: > Here are some numbers (using the my development clone of git > itself) from my local machine: > > rm -rf && mkdir && > (cd && git init) && > time git push --mirror > >real 0m16.056s >user 0m24.424s >sys

[PATCH 2/2] serialize collection of refs that contain submodule changes

2016-09-14 Thread Heiko Voigt
We are iterating over each pushed ref and want to check whether it contains changes to submodules. Instead of immediately checking each ref lets first collect them and then do the check for all of them in one revision walk. Signed-off-by: Heiko Voigt --- Sorry this was not catched earlier. This