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

Re: [PATCH 3/4 v6] cache-tree: subdirectory tests

From
Junio C Hamano <gitster@pobox.com>
Date
Jul 11, 2014, 15:40 UTC
Message-ID
<xmqq7g3j6gzr.fsf@gitster.dls.corp.google.com>
In-Reply-To
<xmqqbnsv6hmc.fsf@gitster.dls.corp.google.com>
Junio C Hamano <gitster@pobox.com> writes:
Show 6 quoted lines
>>> +       sed -n -e "s/[0-9]* subtrees//" -e '/#(ref)/d' -e '/^invalid /p' >actual &&
>
> Is the second one to remove "#(ref)", which appears for a good
> "reference" cache tree entry shown for comparison, necessary?  Do
> they ever begin with "invalid"?  If they ever begin with "invalid"
> that itself may even be a noteworthy breakage to catch, no?
Answering to myself...

Because test-dump-cache-tree uses DRY_RUN to create only an in-core copy of tree object, and we notice that the reference cache-tree created in the tests contains the object name of a tree that does not yet exist in the object database. We get "invalid #(ref)" for such node.

In the ideal world, I think whoever tries to compare two cache-trees (i.e. test-dump-cache-tree) should *not* care, because we are merely trying to show what the correct tree object name for the node would be, but this is only for testing, so the best way forward would be to:

 - Stop using DRY_RUN in test-dump-cache-tree.c;
 - Stop the code to support DRY_RUN from cache-tree.c (nobody but
   the test uses it); and
 - Drop the "-e '#(ref)/d'" from the above.
I would think.
Previous: Junio C HamanoNext: David Turner
Message 6 of 12 in “cache-tree: Create/update cache-tree on checkout”
  1. 1/4 cache-tree: Create/update cache-tree on checkoutDavid Turner, Jul 11, 2014
  2. 2/4 test-dump-cache-tree: invalid trees are not errorsDavid Turner, Jul 11, 2014
  3. 3/4 cache-tree: subdirectory testsDavid Turner, Jul 11, 2014
  4. Eric SunshineJul 11, 2014
  5. Junio C HamanoJul 11, 2014
  6. Junio C HamanoJul 11, 2014
  7. David TurnerJul 11, 2014
  8. Junio C HamanoJul 13, 2014
  9. David TurnerJul 11, 2014
  10. 4/4 cache-tree: Write updated cache-tree after commitDavid Turner, Jul 11, 2014
  11. Junio C HamanoJul 11, 2014
  12. David TurnerJul 11, 2014

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.