Subject: Re: [PATCH v10 3/4] add `config_set` API for caching config-like files

From: Tanay Abhra <[email-masked]>
Date: Fri, 18 Jul 2014 15:22:49 +0530

On 7/18/2014 3:10 PM, Matthieu Moy wrote:
> ----- Original Message -----
>>  Documentation/technical/api-config.txt | 137 +++++++++++++++++
>>  cache.h                                |  30 ++++
>>  config.c                               | 263
>>  +++++++++++++++++++++++++++++++++
>>  3 files changed, 430 insertions(+)
> 
> I think the added call to git_config_clear() I proposed yesterday in setup_git_directory_gently_1 should be part of this patch (with the associated comment), just like this call:
>

Oh, my bad, I thought you meant that I incorporate it with the git_config_raw() patch.
I wanted to ask, can we call setup_git_directory_gently() earlier in execv_dashed_external()
in git.c, which calls check_pager_config() for the first time which causes the
incomplete cache to formed.
If we can do it, we won't have to clear the cache every time setup_git_directory_gently_1()
is called.

>> @@ -1707,6 +1967,9 @@ int git_config_set_multivar_in_file(const char
>> *config_filename,
>>  	lock = NULL;
>>  	ret = 0;
>>  
>> +	/* Invalidate the config cache */
>> +	git_config_clear();
>> +
>>  out_free:
>>  	if (lock)
>>  		rollback_lock_file(lock);
> 
> I have limited access to my email and no way to apply the patches today, so I can't do a detailed review. But other than the remark above, I guess the patch series is now all right and ready to cook in pu.
>