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

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

From
Johannes Schindelin via GitGitGadget <gitgitgadget@gmail.com>
Date
Jan 19, 2022, 17:29 UTC
Message-ID
<1bb57ccd61452124119bb663f5e35e9676748c82.1642613380.git.gitgitgadget@gmail.com>
In-Reply-To
<pull.1119.git.1642613379.gitgitgadget@gmail.com>
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(+)
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;
 	}
-- 
gitgitgadget
Previous: Johannes Schindelin via GitGitGadgetNext: Junio C Hamano
Message 6 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.