git@vger.kernel.org mailing list mirror (one of many)
 help / color / mirror / code / Atom feed
From: Johannes Schindelin <Johannes.Schindelin@gmx.de>
To: "brian m. carlson" <sandals@crustytoothpaste.net>
Cc: git@vger.kernel.org, Eric Sunshine <sunshine@sunshineco.com>,
	Johan Herland <johan@herland.net>
Subject: Re: [PATCH v2 03/22] t3305: annotate with SHA1 prerequisite
Date: Sun, 26 Jan 2020 12:15:52 +0100 (CET)	[thread overview]
Message-ID: <nycvar.QRO.7.76.6.2001261209590.46@tvgsbejvaqbjf.bet> (raw)
In-Reply-To: <20200125230035.136348-4-sandals@crustytoothpaste.net>

Hi brian,

On Sat, 25 Jan 2020, brian m. carlson wrote:

> This test relies on a roughly equal distribution of hashes for notes in
> order to ensure that fanouts are compressed.  If there are subtrees with
> only one item left after removing notes, they'll end up still with one
> level of fanout, causing the test to fail.

That is _almost_ correct: The heuristic wants to see one bucket that has
a note in it. Or something like that.

See 73f77b909f8 (Notes API: for_each_note(): Traverse the entire notes
tree with a callback, 2010-02-13) for details. (Cc:ing Johan.)

> The test happens to pass with SHA-1, but doesn't necessarily with other
> hash algorithms, so annotate it with the SHA1 prerequisite.

I would rather see this tested, still, and reducing the number of notes
that are retained from 50 to 20 before testing that the fanout has been
reduced to 0 seems to do the trick. Therefore, I would love to submit this
for squashing:

-- snip --
diff --git a/t/t3305-notes-fanout.sh b/t/t3305-notes-fanout.sh
index 3520402bb81..39b12c9902c 100755
--- a/t/t3305-notes-fanout.sh
+++ b/t/t3305-notes-fanout.sh
@@ -43,7 +43,7 @@ test_expect_success 'many notes created with git-notes triggers fanout' '
 '

 test_expect_success 'deleting most notes with git-notes' '
-	num_notes=250 &&
+	num_notes=280 &&
 	i=0 &&
 	git rev-list HEAD |
 	while test $i -lt $num_notes && read sha1
@@ -56,8 +56,8 @@ test_expect_success 'deleting most notes with git-notes' '
 '

 test_expect_success 'most notes deleted correctly with git-notes' '
-	git log HEAD~250 | grep "^    " > output &&
-	i=50 &&
+	git log HEAD~280 | grep "^    " > output &&
+	i=20 &&
 	while test $i -gt 0
 	do
 		echo "    commit #$i" &&
@@ -67,7 +67,7 @@ test_expect_success 'most notes deleted correctly with git-notes' '
 	test_cmp expect output
 '

-test_expect_success SHA1 'deleting most notes triggers fanout consolidation' '
+test_expect_success 'deleting most notes triggers fanout consolidation' '
 	# Expect entire notes tree to have a fanout == 0
 	git ls-tree -r --name-only refs/notes/commits |
 	while read path
-- snap --

Thanks,
Dscho

>
> Signed-off-by: brian m. carlson <sandals@crustytoothpaste.net>
> ---
>  t/t3305-notes-fanout.sh | 2 +-
>  1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/t/t3305-notes-fanout.sh b/t/t3305-notes-fanout.sh
> index 831f83d211..3520402bb8 100755
> --- a/t/t3305-notes-fanout.sh
> +++ b/t/t3305-notes-fanout.sh
> @@ -67,7 +67,7 @@ test_expect_success 'most notes deleted correctly with git-notes' '
>  	test_cmp expect output
>  '
>
> -test_expect_success 'deleting most notes triggers fanout consolidation' '
> +test_expect_success SHA1 'deleting most notes triggers fanout consolidation' '
>  	# Expect entire notes tree to have a fanout == 0
>  	git ls-tree -r --name-only refs/notes/commits |
>  	while read path
>

  reply	other threads:[~2020-01-26 11:16 UTC|newest]

Thread overview: 52+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2020-01-25 23:00 [PATCH v2 00/23] SHA-256 test fixes, part 8 brian m. carlson
2020-01-25 23:00 ` [PATCH v2 01/22] t/lib-pack: support SHA-256 brian m. carlson
2020-01-25 23:00 ` [PATCH v2 02/22] t3206: make hash size independent brian m. carlson
2020-01-25 23:00 ` [PATCH v2 03/22] t3305: annotate with SHA1 prerequisite brian m. carlson
2020-01-26 11:15   ` Johannes Schindelin [this message]
2020-01-26 18:18     ` Johan Herland
2020-01-26 21:28       ` Johannes Schindelin
2020-01-26 21:50         ` brian m. carlson
2020-01-26 23:57         ` Johan Herland
2020-01-27 12:22           ` Johannes Schindelin
2020-01-26 19:44     ` brian m. carlson
2020-01-25 23:00 ` [PATCH v2 04/22] t3308: make test work with SHA-256 brian m. carlson
2020-01-25 23:00 ` [PATCH v2 05/22] t3309: " brian m. carlson
2020-01-25 23:00 ` [PATCH v2 06/22] t3310: " brian m. carlson
2020-01-25 23:00 ` [PATCH v2 07/22] t3311: " brian m. carlson
2020-01-25 23:00 ` [PATCH v2 08/22] t4013: make test hash independent brian m. carlson
2020-01-26 22:08   ` Johannes Schindelin
2020-01-26 22:26     ` brian m. carlson
2020-01-25 23:00 ` [PATCH v2 09/22] t4060: make test work with SHA-256 brian m. carlson
2020-01-25 23:00 ` [PATCH v2 10/22] t4211: make test hash independent brian m. carlson
2020-01-26 22:13   ` Johannes Schindelin
2020-01-25 23:00 ` [PATCH v2 11/22] t5302: make hash size independent brian m. carlson
2020-01-26 22:23   ` Johannes Schindelin
2020-01-26 22:33     ` brian m. carlson
2020-01-25 23:00 ` [PATCH v2 12/22] t5309: make test hash independent brian m. carlson
2020-01-25 23:00 ` [PATCH v2 13/22] t5313: " brian m. carlson
2020-01-28 18:15   ` Junio C Hamano
2020-01-25 23:00 ` [PATCH v2 14/22] t5321: " brian m. carlson
2020-01-25 23:00 ` [PATCH v2 15/22] t5515: " brian m. carlson
2020-01-28 18:28   ` Junio C Hamano
2020-01-29  4:04     ` brian m. carlson
2020-01-25 23:00 ` [PATCH v2 16/22] t5318: update for SHA-256 brian m. carlson
2020-01-25 23:00 ` [PATCH v2 17/22] t5607: make hash size independent brian m. carlson
2020-01-25 23:00 ` [PATCH v2 17/23] t5616: use correct filter syntax brian m. carlson
2020-01-28 19:06   ` Junio C Hamano
2020-01-29  3:53     ` brian m. carlson
2020-01-25 23:00 ` [PATCH v2 18/23] t5607: make hash size independent brian m. carlson
2020-01-25 23:00 ` [PATCH v2 18/22] t5703: make test work with SHA-256 brian m. carlson
2020-01-28 19:09   ` Junio C Hamano
2020-01-29  3:46     ` brian m. carlson
2020-01-25 23:00 ` [PATCH v2 19/23] " brian m. carlson
2020-01-25 23:00 ` [PATCH v2 19/22] t5703: switch tests to use test_oid brian m. carlson
2020-01-25 23:00 ` [PATCH v2 20/23] " brian m. carlson
2020-01-25 23:00 ` [PATCH v2 20/22] t6000: abstract away SHA-1-specific constants brian m. carlson
2020-01-25 23:00 ` [PATCH v2 21/23] " brian m. carlson
2020-01-25 23:00 ` [PATCH v2 21/22] t6006: make hash size independent brian m. carlson
2020-01-25 23:00 ` [PATCH v2 22/23] " brian m. carlson
2020-01-25 23:00 ` [PATCH v2 22/22] t6024: update for SHA-256 brian m. carlson
2020-01-25 23:00 ` [PATCH v2 23/23] " brian m. carlson
2020-01-26 10:25 ` [PATCH v2 00/23] SHA-256 test fixes, part 8 Johannes Schindelin
2020-01-26 19:42   ` brian m. carlson
2020-01-26 21:30     ` Johannes Schindelin

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

  List information: http://vger.kernel.org/majordomo-info.html

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

  git send-email \
    --in-reply-to=nycvar.QRO.7.76.6.2001261209590.46@tvgsbejvaqbjf.bet \
    --to=johannes.schindelin@gmx.de \
    --cc=git@vger.kernel.org \
    --cc=johan@herland.net \
    --cc=sandals@crustytoothpaste.net \
    --cc=sunshine@sunshineco.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.
Code repositories for project(s) associated with this public inbox

	https://80x24.org/mirrors/git.git

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).