Web lists-archives.com

Re: [PATCH 050/194] replace-object: check_replace_refs is safe in multi repo environment




On Mon, Feb 5, 2018 at 6:55 PM, Stefan Beller <sbeller@xxxxxxxxxx> wrote:
> In e1111cef23 (inline lookup_replace_object() calls, 2011-05-15) a shortcut
> for checking the object replacement was added by setting check_replace_refs
> to 0 once the replacements were evaluated to not exist. This works fine in
> with the assumption of only one repository in existence.
>
> The assumption won't hold true any more when we work on multiple instances
> of a repository structs (e.g. one struct per submodule), as the first
> repository to be inspected may have no replacements and would set the
> global variable. Other repositories would then completely omit their
> evaluation of replacements.
>
> This reverts back the meaning of the flag `check_replace_refs` of
> "Do we need to check with the lookup table?" to "Do we need read the

s/need read/need to read/

> replacement definition?", adding the bypassing logic to
> lookup_replace_object after the replacement definition was read.
> As with the original patch, delay the renaming of the global variable
>
> Signed-off-by: Stefan Beller <sbeller@xxxxxxxxxx>