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

RE: [Possible Bug] Commit generates GC repack failure

From
Randall S. Becker <rsbecker@nexbridge.com>
Date
Jan 14, 2019, 16:09 UTC
Message-ID
<003601d4ac23$91ff2f80$b5fd8e80$@nexbridge.com>
In-Reply-To
<87tvib46kr.fsf@evledraar.gmail.com>
On January 14, 2019 10:12, Ævar Arnfjörð Bjarmason wrote:
Show 28 quoted lines
> On Mon, Jan 14 2019, Randall S. Becker wrote:
> 
> > Hi All,
> >
> > I'm trying to track down what happened this morning. We had a commit
> > that caused a background gc to occur. What happened was:
> >
> > $ git commit -m "history commit ... "
> > Auto packing the repository in background for optimum performance.
> > See "git help gc" for manual housekeeping.
> > warning: The last gc run reported the following. Please correct the
> > root cause and remove .git/gc.log.
> > Automatic cleanup will not be performed until the file is removed.
> >
> > fatal: open /dev/null failed: Invalid function argument
> > fatal: failed to run repack
> >
> > Obviously the /dev/null open was not right, but I don't know where
> > this is in the git code to investigate further. Any pointers on where
> > to look would be appreciated. This started happening at  2.20.1 on the
> NonStop platform.
> 
> We use start_command() when gc does run_command_v_opt() of e.g. git-
> repack. See in that file:
> 
>     null_fd = open("/dev/null", O_RDWR | O_CLOEXEC)
> 
> Maybe that sort of code just fails on NonStop?
That line of code works fine on the platform. I tested it in isolation at various OS levels. Let me go back and say that I'm not 100% sure this is new, but may have been there since just before 2.16. Still perplexed recognizing that that is the only point in git code where that can happen.

Cheers, Randall

Previous: Ævar Arnfjörð Bjarmason
Message 5 of 5 in “[Possible Bug] Commit generates GC repack failure”
  1. Randall S. BeckerJan 14, 2019
  2. Duy NguyenJan 14, 2019
  3. Duy NguyenJan 14, 2019
  4. Ævar Arnfjörð BjarmasonJan 14, 2019
  5. Randall S. BeckerJan 14, 2019

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.