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

Re: [PATCHv4] sha1_file: fix iterating loose alternate objects

From
Jeff King <peff@peff.net>
Date
Feb 2, 2015, 20:02 UTC
Message-ID
<20150202200258.GA28915@peff.net>
In-Reply-To
<xmqqk300t772.fsf@gitster.dls.corp.google.com>
On Mon, Feb 02, 2015 at 12:00:17PM -0800, Junio C Hamano wrote:
Show 26 quoted lines
> Jonathon Mah <me@jonathonmah.com> writes:
> 
> > +test_expect_success 'prune: handle alternate object database' '
> > +	test_create_repo A &&
> > +		(cd A &&
> > +		echo "Hello World" >file1 &&
> > +		git add file1 &&
> > +		git commit -m "Initial commit" file1) &&
> > +	git clone -s A B &&
> > +		(cd B &&
> > +		echo "foo bar" >file2 &&
> > +		git add file2 &&
> > +		git commit -m "next commit" file2 &&
> > +		git prune)
> > +'
> 
> The issue does not have much to do with introducing new path to the
> cloned repository, or the original having any specific content for
> that matter, so I am tempted to simplify the above to something like
> this intead:
> 
> 	test_create_repo A &&
> 	git -C A commit --allow-empty -m "initial commit" &&
> 	git clone --shared A B &&
> 	git -C B commit --allow-empty -m "next commit" &&
> 	git -C B prune

Yeah, I'd agree that more clearly demonstrates the issue (I didn't check that it actually triggers the failure, but presumably you did).

I think we could also construct a more elaborate example where we fail to pick up an unreachable segment of history based on the mtime of a tip commit found only in the alternate (whereas this is only testing that we don't bungle the alternate filename so completely that prune barfs).

-Peff
Previous: Junio C Hamano
Message 5 of 5 in “[PATCHv4] sha1_file: fix iterating loose alternate objects”
  1. Jonathon MahFeb 2, 2015
  2. Jeff KingFeb 2, 2015
  3. Junio C HamanoFeb 2, 2015
  4. Junio C HamanoFeb 2, 2015
  5. Jeff KingFeb 2, 2015

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.