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

Re: [PATCH 1/4] commit: reload cache properly

From
Duy Nguyen <pclouds@gmail.com>
Date
May 30, 2013, 13:08 UTC
Message-ID
<CACsJy8BuSaY=H9Pb6FuTEiQkm18h-kW86ZOVtaaDpMkjFEnqcQ@mail.gmail.com>
In-Reply-To
<87ehcok6gl.fsf@linux-k42r.v.cablecom.net>
On Thu, May 30, 2013 at 7:17 PM, Thomas Rast <trast@inf.ethz.ch> wrote:
Show 16 quoted lines
> Felipe Contreras <felipe.contreras@gmail.com> writes:
>
>> We are supposedly adding files, to to which cache if 'the_index' is
>> discarded?
> [...]
>>       if (!current_head) {
>>               discard_cache();
>> +             if (read_cache() < 0)
>> +                     die(_("cannot read the index"));
>>               return;
>>       }
>
> It is not obvious to me that this is a correct change.  discard_cache()
> without subsequent reloading could also legitimately be used to empty
> the index.  So if you are fixing a bug, please justify the change and
> provide a testcase to guard against it in the future.

That discard_cache line I think came from fa9dcf8 (Fix performance regression for partial commits - 2008-01-13). The code flow back then was

if (initial_commit)
   discard_cache();

add_remove_files(); /* do something more */

A quick look from current code seems to indicate this pattern is still valid for creating partial commits, where temporary index will be thrown away afterwards. But I may be wrong. -- Duy

Previous: Thomas RastNext: Felipe Contreras
Message 9 of 16 in “cherry-pick: fix memory leaks”
  1. 0/4 cherry-pick: fix memory leaksFelipe Contreras, May 30, 2013
  2. 1/4 commit: reload cache properlyFelipe Contreras, May 30, 2013
  3. Thomas RastMay 30, 2013
  4. Felipe ContrerasMay 30, 2013
  5. Thomas RastMay 30, 2013
  6. Felipe ContrerasMay 30, 2013
  7. Duy NguyenJun 1, 2013
  8. Test 'commit --only' after 'checkout --orphan'Thomas Rast, Jun 1, 2013
  9. Duy NguyenMay 30, 2013
  10. 2/4 read-cache: plug small memory leakFelipe Contreras, May 30, 2013
  11. 3/4 unpack-trees: plug a memory leakFelipe Contreras, May 30, 2013
  12. Junio C HamanoJun 2, 2013
  13. Felipe ContrerasJun 2, 2013
  14. Junio C HamanoJun 2, 2013
  15. Felipe ContrerasJun 2, 2013
  16. 4/4 unpack-trees: free created cache entriesFelipe Contreras, May 30, 2013

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.