git.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Junio C Hamano <gitster@pobox.com>
To: Andreas Schwab <schwab@suse.de>
Cc: git@vger.kernel.org, peff@peff.net
Subject: Re: git gc complains about "unable to read $oid" but git fsck finds no problems
Date: Thu, 01 Jun 2023 19:07:39 +0900	[thread overview]
Message-ID: <xmqqsfbba42c.fsf@gitster.g> (raw)
In-Reply-To: <mvmfs7ba4el.fsf@suse.de> (Andreas Schwab's message of "Thu, 01 Jun 2023 12:00:18 +0200")

I vaguely recall there was a recent threaad discussing fsck and
normal codepath doing different checks.

Does this look similar to what you have?  (sorry, I am running out
of gas tonight to dig deeply myself).

https://lore.kernel.org/git/20230330181716.GA3286761@coredump.intra.peff.net/

Andreas Schwab <schwab@suse.de> writes:

> $ git count-objects -v -H
> count: 2177
> size: 17.75 MiB
> in-pack: 878690
> packs: 46
> size-pack: 279.84 MiB
> prune-packable: 0
> garbage: 0
> size-garbage: 0 bytes
> $ git gc
> Enumerating objects: 866036, done.
> Counting objects: 100% (866036/866036), done.
> Delta compression using up to 8 threads
> Compressing objects: 100% (144924/144924), done.
> fatal: unable to read e8524e0483c8e65746888368f77f83d7a955ea87
> fatal: failed to run repack
>
> How can I find out where the bad object is referenced to be able to get
> rid of it?  It is not part of the regular history, a re-clone of the
> remote repository does not fetch it.  git fsck --full --cache prints a
> lot of dangling commits, but still does not complain.  The error happens
> about half way through writing out the new pack.
>
> The repository is more than 10 years old and in regular use all that
> time, including a lot of rebasing.  I have looked through all of the
> reflogs, but couldn't find the object there either.  git prune
> --expire=now and git reflog expire --all --stale-fix
> --expire-unreachable=all didn't help.
>
> Then I used the fresh clone to copy over all heads I know about, like
> recreating the branches and replace refs, fetching all reflog entries.
> That did not report any problems and git gc does not complain, but it
> has about 14800 objects less.
>
> Any ideas?

  reply	other threads:[~2023-06-01 10:10 UTC|newest]

Thread overview: 3+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2023-06-01 10:00 git gc complains about "unable to read $oid" but git fsck finds no problems Andreas Schwab
2023-06-01 10:07 ` Junio C Hamano [this message]
2023-06-01 10:38   ` Andreas Schwab

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=xmqqsfbba42c.fsf@gitster.g \
    --to=gitster@pobox.com \
    --cc=git@vger.kernel.org \
    --cc=peff@peff.net \
    --cc=schwab@suse.de \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
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 NNTP newsgroup(s).