* merge-ort assertion failure
@ 2022-01-14 19:46 Taylor Blau
2022-01-14 22:15 ` Elijah Newren
0 siblings, 1 reply; 3+ messages in thread
From: Taylor Blau @ 2022-01-14 19:46 UTC (permalink / raw)
To: Elijah Newren; +Cc: git
Elijah,
A colleague reported that they were able to hit an assertion failure in
merge-ort when rebasing a topic of their back onto upstream.
The scenario (which I have been able to reproduce on a private
repository, but haven't had time to reduce further) is:
$ git --version
git version 2.34.1
$ git rebase origin/master
warning: skipped previously applied commit 9cda243afc2a
warning: skipped previously applied commit 882bb87a3a7c
hint: use --reapply-cherry-picks to include skipped commits
hint: Disable this message with "git config advice.skippedCherryPicks false"
[some "Auto-merging" messages ...]
CONFLICT (content): Merge conflict in
[some file]
warning: exhaustive rename detection was skipped due to too many files.
warning: you may want to set your merge.renamelimit variable to at least 165 and retry the command.
Assertion failed: (renames->cached_pairs_valid_side == 0), function
clear_or_reinit_internal_opts, file merge-ort.c, line 546.
Abort trap: 6
Their merge.renameLimit is set pretty low at just "1", and this
assertion goes away so long as `merge.renameLimit` is set sufficiently
high.
I haven't had a chance to look into it very deeply yet. Elijah: I figure
that this is the sort of thing that may be totally obvious to you, so
I'm sharing it here in case it is.
Otherwise, I'll continue to poke at it locally and see if I can learn
anything else.
Thanks,
Taylor
^ permalink raw reply [flat|nested] 3+ messages in thread
* Re: merge-ort assertion failure
2022-01-14 19:46 merge-ort assertion failure Taylor Blau
@ 2022-01-14 22:15 ` Elijah Newren
2022-01-14 22:29 ` Taylor Blau
0 siblings, 1 reply; 3+ messages in thread
From: Elijah Newren @ 2022-01-14 22:15 UTC (permalink / raw)
To: Taylor Blau; +Cc: Git Mailing List
On Fri, Jan 14, 2022 at 11:46 AM Taylor Blau <me@ttaylorr.com> wrote:
>
> Elijah,
>
> A colleague reported that they were able to hit an assertion failure in
> merge-ort when rebasing a topic of their back onto upstream.
>
> The scenario (which I have been able to reproduce on a private
> repository, but haven't had time to reduce further) is:
>
> $ git --version
> git version 2.34.1
>
> $ git rebase origin/master
> warning: skipped previously applied commit 9cda243afc2a
> warning: skipped previously applied commit 882bb87a3a7c
> hint: use --reapply-cherry-picks to include skipped commits
> hint: Disable this message with "git config advice.skippedCherryPicks false"
> [some "Auto-merging" messages ...]
> CONFLICT (content): Merge conflict in
> [some file]
> warning: exhaustive rename detection was skipped due to too many files.
> warning: you may want to set your merge.renamelimit variable to at least 165 and retry the command.
> Assertion failed: (renames->cached_pairs_valid_side == 0), function
> clear_or_reinit_internal_opts, file merge-ort.c, line 546.
> Abort trap: 6
>
> Their merge.renameLimit is set pretty low at just "1", and this
> assertion goes away so long as `merge.renameLimit` is set sufficiently
> high.
>
> I haven't had a chance to look into it very deeply yet. Elijah: I figure
> that this is the sort of thing that may be totally obvious to you, so
> I'm sharing it here in case it is.
I don't have a testcase (though I think there is probably enough
information here for me to create one), but I think I know the
problem. Does this fix it for you? :
https://github.com/git/git/pull/1193
^ permalink raw reply [flat|nested] 3+ messages in thread
* Re: merge-ort assertion failure
2022-01-14 22:15 ` Elijah Newren
@ 2022-01-14 22:29 ` Taylor Blau
0 siblings, 0 replies; 3+ messages in thread
From: Taylor Blau @ 2022-01-14 22:29 UTC (permalink / raw)
To: Elijah Newren; +Cc: Taylor Blau, Git Mailing List
On Fri, Jan 14, 2022 at 02:15:31PM -0800, Elijah Newren wrote:
> On Fri, Jan 14, 2022 at 11:46 AM Taylor Blau <me@ttaylorr.com> wrote:
>
> > I haven't had a chance to look into it very deeply yet. Elijah: I figure
> > that this is the sort of thing that may be totally obvious to you, so
> > I'm sharing it here in case it is.
>
> I don't have a testcase (though I think there is probably enough
> information here for me to create one), but I think I know the
> problem. Does this fix it for you? :
> https://github.com/git/git/pull/1193
Unfortunately not. With a sufficiently small value of merge.renameLimit
(in my case, just 1) I can trigger the same assertion failure:
$ GIT_DEBUGGER=1 git.compile -c merge.renameLimit=1 rebase $onto
[...]
Thread 1 "git" hit Breakpoint 1, clear_or_reinit_internal_opts (opti=0x55555b0cf3f0, reinitialize=0) at merge-ort.c:546
546 assert(renames->cached_pairs_valid_side == 0);
(gdb) p renames->cached_pairs_valid_side
$1 = -1
Short of providing a small, reproducible test-case, I'm happy to share
any information I can about the repository that might be useful to you.
Thanks,
Taylor
^ permalink raw reply [flat|nested] 3+ messages in thread
end of thread, other threads:[~2022-01-14 22:29 UTC | newest]
Thread overview: 3+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2022-01-14 19:46 merge-ort assertion failure Taylor Blau
2022-01-14 22:15 ` Elijah Newren
2022-01-14 22:29 ` Taylor Blau
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).