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

[PATCH v2 3/4] tmp: remote-helper: add timers to catch errors

From
Felipe Contreras <felipe.contreras@gmail.com>
Date
Apr 2, 2013, 10:31 UTC
Message-ID
<1364898709-21583-4-git-send-email-felipe.contreras@gmail.com>
In-Reply-To
<1364898709-21583-1-git-send-email-felipe.contreras@gmail.com>
This way the test reliably succeeds (in catching the failure).

Not sure what's the proper way to do this, but here it is for the record.

Signed-off-by: Felipe Contreras <felipe.contreras@gmail.com>
---
 git-remote-testgit        | 1 +
 t/t5801-remote-helpers.sh | 2 +-
 transport-helper.c        | 3 +++
 3 files changed, 5 insertions(+), 1 deletion(-)
diff --git a/git-remote-testgit b/git-remote-testgit
index ca0cf09..6ae1b7f 100755
--- a/git-remote-testgit
+++ b/git-remote-testgit
@@ -75,6 +75,7 @@ do
 	export)
 		if test -n "$GIT_REMOTE_TESTGIT_FAILURE"
 		then
+			sleep 1 # don't let fast-export get SIGPIPE
 			exit -1
 		fi
 
diff --git a/t/t5801-remote-helpers.sh b/t/t5801-remote-helpers.sh
index efe67e2..d6702b4 100755
--- a/t/t5801-remote-helpers.sh
+++ b/t/t5801-remote-helpers.sh
@@ -176,7 +176,7 @@ test_expect_success 'proper failure checks for fetching' '
 '
 
 # We sleep to give fast-export a chance to catch the SIGPIPE
-test_expect_failure 'proper failure checks for pushing' '
+test_expect_success 'proper failure checks for pushing' '
 	(GIT_REMOTE_TESTGIT_FAILURE=1 &&
 	export GIT_REMOTE_TESTGIT_FAILURE &&
 	cd local &&
diff --git a/transport-helper.c b/transport-helper.c
index dfdfa7a..f0d28aa 100644
--- a/transport-helper.c
+++ b/transport-helper.c
@@ -823,6 +823,9 @@ static int push_refs_with_export(struct transport *transport,
 	if (finish_command(&exporter))
 		die("Error while running fast-export");
 
+	if (getenv("GIT_REMOTE_TESTGIT_FAILURE"))
+		sleep(2);
+
 	if (!check_command(data->helper))
 		die("Error while running helper");
 
-- 
1.8.2
Previous: Junio C HamanoNext: Felipe Contreras
Message 6 of 7 in “run-command: new check_command helper”
  1. 0/4 run-command: new check_command helperFelipe Contreras, Apr 2, 2013
  2. 1/4 run-command: add new check_command helperFelipe Contreras, Apr 2, 2013
  3. Johannes SixtApr 2, 2013
  4. 2/4 transport-helper: check if remote helper is aliveFelipe Contreras, Apr 2, 2013
  5. Junio C HamanoApr 3, 2013
  6. 3/4 tmp: remote-helper: add timers to catch errorsFelipe Contreras, Apr 2, 2013
  7. 4/4 tmp: run-command: code to exercise check_commandFelipe Contreras, Apr 2, 2013

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.