Thread (2 messages) flat view 2 messages, 2 authors, 2020-03-24

Re: [ANNOUNCE] Git v2.26.0 - Test Results NonStop Platform

From: Jeff King <hidden>
Date: 2020-03-24 03:52:18
Subsystem: the rest · Maintainer: Linus Torvalds

On Mon, Mar 23, 2020 at 05:25:25PM -0400, Randall S. Becker wrote:
On March 22, 2020 9:10 PM, Junio C Hamano wrote:
quoted
The latest feature release Git v2.26.0 is now available at the usual places.  It
is comprised of 504 non-merge commits since v2.25.0, contributed by 64
people, 12 of which are new faces.
We had t0301 fail again. This is run entirely within bash as we gave
up on ksh. I need some advice on what to do here. It does look like
this is actually in git rather than the tests, based on below.

What is really strange is that the subtests are transiently failing
and not the same test each time. I cannot get any consistency during
test runs. I also do not see anything in the differences that might
account for this, unless somehow the unicode length. I did revert and
retried the test, which also resulted in transient failures. It all
works fine when I use -x, so I can't shed light on it from there. An
example of the failure is:
t0301 is about credential-cache, which involves daemonizing a process
and talking to it over a unix socket. I could very well believe that
there is some portability weirdness there on an exotic platform.

In particular:
quoted hunk ↗ jump to hunk
--- expect-stdout       2020-03-23 20:40:57 +0000
+++ stdout      2020-03-23 20:40:58 +0000
@@ -1,4 +1,4 @@
 protocol=https
 host=example.com
-username=askpass-username
-password=askpass-password
+username=store-user
+password=store-pass
not ok 21 - helper (cache) can forget host
The point of that test is to tell the cache daemon to throw away the
entry, which means the next "fill" should have to resort to askpass. But
clearly it doesn't.

The "forgetting" is all internal to the daemon, so I don't think we'd
have a bug there. But is it possible that the client wasn't able to
contact the daemon? It would consider that a success (if there is no
daemon, then everything is already forgotten). If that happens
intermittently (when there actually _is_ a cache daemon there), it would
explain the behavior you're seeing.

Maybe try a patch like this:
diff --git a/credential-cache.c b/credential-cache.c
index 1cccc3a0b9..26baf74332 100644
--- a/credential-cache.c
+++ b/credential-cache.c
@@ -78,6 +78,8 @@ static void do_cache(const char *socket, const char *action, int timeout,
 			spawn_daemon(socket);
 			if (send_request(socket, &buf) < 0)
 				die_errno("unable to connect to cache daemon");
+		} else {
+			die_errno("cache daemon not available");
 		}
 	}
 	strbuf_release(&buf);
That will cause tests 1 and 14 of t0301 to fail consistently, but
possibly it could shed some light if other tests fail with it, too.

-Peff
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help