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

Re: [PATCH 3/3] split-index: it really is incompatible with the sparse index

From
Junio C Hamano <gitster@pobox.com>
Date
Jan 21, 2022, 23:39 UTC
Message-ID
<xmqqh79wejzo.fsf@gitster.g>
In-Reply-To
<1bb57ccd61452124119bb663f5e35e9676748c82.1642613380.git.gitgitgadget@gmail.com>

"Johannes Schindelin via GitGitGadget" <gitgitgadget@gmail.com> writes:

Show 11 quoted lines
> From: Johannes Schindelin <johannes.schindelin@gmx.de>
>
> ... at least for now. So let's error out if we are even trying to
> initialize the split index when the index is sparse, or when trying to
> write the split index extension for a sparse index.
>
> Signed-off-by: Johannes Schindelin <johannes.schindelin@gmx.de>
> ---
>  read-cache.c  | 3 +++
>  split-index.c | 3 +++
>  2 files changed, 6 insertions(+)
Good.  Will queue.
Show 28 quoted lines
> diff --git a/read-cache.c b/read-cache.c
> index cbe73f14e5e..a932e01fc7a 100644
> --- a/read-cache.c
> +++ b/read-cache.c
> @@ -3009,6 +3009,9 @@ static int do_write_index(struct index_state *istate, struct tempfile *tempfile,
>  	    !is_null_oid(&istate->split_index->base_oid)) {
>  		struct strbuf sb = STRBUF_INIT;
>  
> +		if (istate->sparse_index)
> +			die(_("cannot write split index for a sparse index"));
> +
>  		err = write_link_extension(&sb, istate) < 0 ||
>  			write_index_ext_header(f, eoie_c, CACHE_EXT_LINK,
>  					       sb.len) < 0;
> diff --git a/split-index.c b/split-index.c
> index 8e52e891c3b..9d0ccc30d00 100644
> --- a/split-index.c
> +++ b/split-index.c
> @@ -5,6 +5,9 @@
>  struct split_index *init_split_index(struct index_state *istate)
>  {
>  	if (!istate->split_index) {
> +		if (istate->sparse_index)
> +			die(_("cannot use split index with a sparse index"));
> +
>  		CALLOC_ARRAY(istate->split_index, 1);
>  		istate->split_index->refcount = 1;
>  	}
Previous: Johannes Schindelin via GitGitGadgetNext: Johannes Schindelin
Message 7 of 10 in “[Non-critical]: sparse index vs split index fixes”
  1. 0/3 [Non-critical]: sparse index vs split index fixesJohannes Schindelin via GitGitGadget, Jan 19, 2022
  2. 1/3 sparse-index: sparse index is disallowed when split index is activeJohannes Schindelin via GitGitGadget, Jan 19, 2022
  3. Junio C HamanoJan 22, 2022
  4. Johannes SchindelinJan 22, 2022
  5. 2/3 t1091: disable split indexJohannes Schindelin via GitGitGadget, Jan 19, 2022
  6. 3/3 split-index: it really is incompatible with the sparse indexJohannes Schindelin via GitGitGadget, Jan 19, 2022
  7. Junio C HamanoJan 21, 2022
  8. Johannes SchindelinJan 22, 2022
  9. Elijah NewrenJan 22, 2022
  10. Johannes SchindelinJan 22, 2022

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.