git/list[1] front-page[2] threads[3] people[4] search[5] about
 

Re: git rebase crash: merge-ort.c:2622: apply_directory_rename_modifications: Assertion `ci->dirmask == 0' failed.

From
Elijah Newren <newren@gmail.com>
Date
Sep 20, 2022, 07:15 UTC
Message-ID
<CABPp-BGdGZ6dg4_wWxkz+VCvaThfn3eL9uqBvmsK3+8GQf0ByA@mail.gmail.com>
In-Reply-To
<20220916124234.h57p67mwywzok23s@haydn.kardiogramm.net>
Hi,
On Fri, Sep 16, 2022 at 6:24 AM Stefano Rivera <stefano@rivera.za.net> wrote:
Show 33 quoted lines
>
> Hi, I got a crash in git-rebase, a failed assertion in merge-ort.c
>
> $ git rebase renamed-parent
> git: merge-ort.c:2622: apply_directory_rename_modifications: Assertion `ci->dirmask == 0' failed.
>
> I was rebasing a branch that replaced a directory with a symlink, onto a
> branch that renamed a parent directory of the modification.
>
> Reproducer script attached.
>
> Using --strategy=recursive avoids the crash, so it's a bug in ort.
>
> Not subscribed, please CC me in replies.
>
> Thanks,
>
> SR
>
> [System Info]
> git version:
> git version 2.38.0.rc0.373.g21cbab7515
> cpu: x86_64
> built from commit: 21cbab75150d71ca294e09180c59ee529ca53957
> sizeof-long: 8
> sizeof-size_t: 8
> shell-path: /bin/sh
> uname: Linux 5.18.0-3-amd64 #1 SMP PREEMPT_DYNAMIC Debian 5.18.14-1 (2022-07-23) x86_64
> compiler info: gnuc: 12.2
> libc info: glibc: 2.34
> $SHELL (typically, interactive shell): /bin/bash
>
> [Enabled Hooks]

Thanks for testing out a release candidate, typing up the detailed report, and even finding a simple testcase! Very cool.

I don't have a fix, but just wanted to send a note out that I've seen your report and will take a look at it this week.

Previous: Stefano RiveraNext: Elijah Newren
Message 2 of 3 in “git rebase crash: merge-ort.c:2622: apply_directory_rename_modifications: Assertion `ci->dirmask == 0' failed.”
  1. Stefano RiveraSep 16, 2022
  2. Elijah NewrenSep 20, 2022
  3. Elijah NewrenOct 22, 2022

Read the whole thread, see it on lore, or plain text.

$ cat FOOTERMessages come from the public archive at lore.kernel.org/git, fetched every hour. The front page is chosen and written each morning by an AI editor and can be wrong; the threads themselves are the record. About and API. For agents: an MCP server at https://gitlist.dev/mcp, and any thread, story or person page as Markdown by adding .md to its URL (or sending Accept: text/markdown). Details in /llms.txt.