actions / actions/cache

Corrupt tree object blocks mirroring

Open
#1,795 0 comments 3 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Dominant language
TypeScript
Stars
5.6k
Forks
1.6k
PR merge metrics
No merged PRs in 30d

Description

Summary

Tree 03b0d650c922837b90bade718648200de3a48afc in this repository contains a 6,309-byte pathname (seems like a GCP build log committed as a directory name). This triggers largePathname fsck failures when trying to mirror this repository.

Reproduction

git clone --mirror https://github.com/actions/cache
cd cache
git fsck

Current behavior

git fsck output:

$ git fsck
Checking ref database: 100% (1/1), done.
Checking object directories: 100% (256/256), done.
warning in tree 03b0d650c922837b90bade718648200de3a48afc: largePathname: contains excessively large pathname
Checking objects: 100% (13494/13494), done.

Expected behavior

No warning about largePathname

Suggested course of action

Could a repo admin run a git gc with ref cleanup, or remove the offending PR refs to allow this object to be pruned?

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start by reproducing the problem with git clone --mirror https://github.com/actions/cache, then run git fsck and inspect tree 03b0d650c922837b90bade718648200de3a48afc. Review the repository refs and the suggested git garbage-collection and ref-cleanup approach; done means mirroring succeeds without the largePathname warning.

Written by the indexing model from the issue text.

Assessment

Tech stack
git
Domain
devops
Issue type
Bug
Difficulty
4/5
Estimated time
3-5 days
Activity status
Active
Clarity
Mostly clear
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.