All of lore.kernel.org
 help / color / mirror / Atom feed
From: "SZEDER Gábor" <szeder.dev@gmail.com>
To: git@vger.kernel.org
Cc: "Derrick Stolee" <stolee@gmail.com>,
	"Thomas Gummerer" <t.gummerer@gmail.com>,
	"Nguyễn Thái Ngọc Duy" <pclouds@gmail.com>,
	"SZEDER Gábor" <szeder.dev@gmail.com>
Subject: [PATCH v2 0/6] Fix GIT_TEST_SPLIT_INDEX
Date: Thu, 26 Aug 2021 22:59:58 +0200	[thread overview]
Message-ID: <20210826210004.672860-1-szeder.dev@gmail.com> (raw)
In-Reply-To: <20210817174938.3009923-1-szeder.dev@gmail.com>

To recap from v1's cover letter:

Running tests with GIT_TEST_SPLIT_INDEX=1 is supposed to turn on the
split index feature and trigger index splitting (mostly) randomly.
Alas, this has been broken for ~2.5 years, and it hasn't triggered any
index splitting since then.

The last patch in this series makes GIT_TEST_SPLIT_INDEX=1 work again,
although it slightly changes its behavior; see its log message for all
the details.

Patches 3 and 4 fix old tests that started to fail because
of this slight behavior change.  Bsides the final fix, patch 4 is the
most interesting in this series.

Patch 5 fixes recent sparse index tests that were introduced while
GIT_TEST_SPLIT_INDEX was broken.

The first two patches are just minor while-at-it test cleanups.


Changes since v1, both in patch 5:
  - Removed a remark about making split and sparse index compatible.
  - Stolle suggested to rebase this patch series on top of topic
    'ds/sparse-index-ignored-files' to avoid merge conflicts in a
    sparse index test.  Well, I didn't do that, but instead I rebased
    this series on top of the merge of master and 86d6ca5886 (t7519:
    rewrite sparse index test, 2021-08-10), and the latter commit:
      - is the one responsible for said merge conflicts, and
      - is at the bottom of 'ds/sparse-index-ignored-files', and could
	be considered more as a followup fix for topic
	'ds/status-with-sparse-index' (already in v2.33.0) than an
	integral part of 'ds/sparse-index-ignored-files'.
    The rest of 'ds/sparse-index-ignored-files' doesn't have any
    conflicts with this patch series that auto-merge couldn't resolve.

SZEDER Gábor (6):
  t1600-index: remove unnecessary redirection
  t1600-index: don't run git commands upstream of a pipe
  t1600-index: disable GIT_TEST_SPLIT_INDEX
  read-cache: look for shared index files next to the index, too
  tests: disable GIT_TEST_SPLIT_INDEX for sparse index tests
  read-cache: fix GIT_TEST_SPLIT_INDEX

 read-cache.c                       | 37 +++++++++++-----
 t/t1091-sparse-checkout-builtin.sh | 25 ++++++-----
 t/t1600-index.sh                   | 13 ++++--
 t/t1700-split-index.sh             | 34 +++++++++++++++
 t/t7519-status-fsmonitor.sh        | 68 ++++++++++++++++--------------
 5 files changed, 121 insertions(+), 56 deletions(-)

Range-diff against v1:
1:  7e1d38d215 = 1:  ab555030cb t1600-index: remove unnecessary redirection
2:  d86c91d26e = 2:  38d350b02d t1600-index: don't run git commands upstream of a pipe
3:  792b6739e5 = 3:  57b5386aee t1600-index: disable GIT_TEST_SPLIT_INDEX
4:  b12467bab7 = 4:  58c444bcd0 read-cache: look for shared index files next to the index, too
5:  51e13df905 ! 5:  24b8b7738c tests: disable GIT_TEST_SPLIT_INDEX for sparse index tests
    @@ Commit message
         by later sanity checks finding that the index is not in fact a sparse
         index.  This indicates that 'git sparse-checkout init --sparse-index'
         lacks some error checking and its tests lack coverage related to split
    -    index, but fixing those issues (let alone making sparse index
    -    comparible with split index) is beyond the scope of this patch series.
    +    index, but fixing those issues is beyond the scope of this patch
    +    series.
     
         [1] https://public-inbox.org/git/48e9c3d6-407a-1843-2d91-22112410e3f8@gmail.com/
     
    @@ t/t7519-status-fsmonitor.sh: check_sparse_index_behavior () {
      }
      
      test_expect_success 'status succeeds with sparse index' '

  I took the liberty to cut the part of the range-diff showing the
  changes of changes to this test, because 86d6ca5886 totally rewrites
  this test, while this patch changes the test's indentation,
  resulting in an unusable range-diff.
  Instead, to show the only relevant change in this patch here is the
  first hunk touching this test with --ignore-all-space from v1:

    @@ -402,6 +402,10 @@ check_sparse_index_behavior () {
     }
    
     test_expect_success 'status succeeds with sparse index' '
    +       (
    +               sane_unset GIT_TEST_SPLIT_INDEX &&
    +               git update-index --no-split-index &&
    +
                    git reset --hard &&
    
                    test_config core.fsmonitor "$TEST_DIRECTORY/t7519/fsmonitor-all" &&

  And from v2:

    @@ -399,6 +399,9 @@ check_sparse_index_behavior () {
     }
    
     test_expect_success 'status succeeds with sparse index' '
    +       (
    +               sane_unset GIT_TEST_SPLIT_INDEX &&
    +
                    git clone . full &&
                    git clone . sparse &&
                    git -C sparse sparse-checkout init --cone --sparse-index &&

6:  a5c790e622 = 6:  a43a12b0ce read-cache: fix GIT_TEST_SPLIT_INDEX
-- 
2.33.0.358.g803110d36e


  parent reply	other threads:[~2021-08-26 21:00 UTC|newest]

Thread overview: 23+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2021-08-17 17:49 [PATCH 0/6] Fix GIT_TEST_SPLIT_INDEX SZEDER Gábor
2021-08-17 17:49 ` [PATCH 1/6] t1600-index: remove unnecessary redirection SZEDER Gábor
2021-08-17 18:12   ` Derrick Stolee
2021-08-17 18:39     ` SZEDER Gábor
2021-08-17 18:48       ` Derrick Stolee
2021-08-17 17:49 ` [PATCH 2/6] t1600-index: don't run git commands upstream of a pipe SZEDER Gábor
2021-08-17 17:49 ` [PATCH 3/6] t1600-index: disable GIT_TEST_SPLIT_INDEX SZEDER Gábor
2021-08-17 17:49 ` [PATCH 4/6] read-cache: look for shared index files next to the index, too SZEDER Gábor
2021-08-17 17:49 ` [PATCH 5/6] tests: disable GIT_TEST_SPLIT_INDEX for sparse index tests SZEDER Gábor
2021-08-17 18:26   ` Derrick Stolee
2021-08-17 21:32     ` SZEDER Gábor
2021-08-18 18:51       ` Derrick Stolee
2021-08-17 17:49 ` [PATCH 6/6] read-cache: fix GIT_TEST_SPLIT_INDEX SZEDER Gábor
2021-08-17 18:29   ` Derrick Stolee
2021-08-26 20:59 ` SZEDER Gábor [this message]
2021-08-26 20:59   ` [PATCH v2 1/6] t1600-index: remove unnecessary redirection SZEDER Gábor
2021-08-26 21:00   ` [PATCH v2 2/6] t1600-index: don't run git commands upstream of a pipe SZEDER Gábor
2021-08-26 21:00   ` [PATCH v2 3/6] t1600-index: disable GIT_TEST_SPLIT_INDEX SZEDER Gábor
2021-08-26 21:00   ` [PATCH v2 4/6] read-cache: look for shared index files next to the index, too SZEDER Gábor
2021-08-26 21:00   ` [PATCH v2 5/6] tests: disable GIT_TEST_SPLIT_INDEX for sparse index tests SZEDER Gábor
2021-08-26 21:00   ` [PATCH v2 6/6] read-cache: fix GIT_TEST_SPLIT_INDEX SZEDER Gábor
2021-08-31 14:47   ` [PATCH v2 0/6] Fix GIT_TEST_SPLIT_INDEX Derrick Stolee
2021-08-31 17:38     ` Junio C Hamano

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20210826210004.672860-1-szeder.dev@gmail.com \
    --to=szeder.dev@gmail.com \
    --cc=git@vger.kernel.org \
    --cc=pclouds@gmail.com \
    --cc=stolee@gmail.com \
    --cc=t.gummerer@gmail.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.