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

RE: [BUG] test_must_fail: does not correctly detect failures - Was Git 2.16.0-rc2 Test Summary on NonStop

From
Randall S. Becker <rsbecker@nexbridge.com>
Date
Jan 14, 2018, 21:32 UTC
Message-ID
<004a01d38d7f$3306e810$9914b830$@nexbridge.com>
In-Reply-To
<59d3adab-4a95-4ef5-2d8f-ef4c7b797156@kdbg.org>
Show 15 quoted lines
> -----Original Message-----
> From: Johannes Sixt [mailto:j6t@kdbg.org]
> Sent: On January 14, 2018 1:41 PM wrote:
> Am 14.01.2018 um 17:50 schrieb Randall S. Becker:
> > Follow-up: This looks like the completion code from perl on NonStop is
> > not the same as expected by git in the case of failures. I need to
> > debug this to get more details to the team. We have had completion
> > issues before relating to interpretation problems between perl, bash,
> > and git in this platform, so I'm assuming this to be likely again but need to
> track down the specifics.
> > Can anyone point me to where the detection is within git or the execv?
> 
> Perhaps you are looking for wait_or_whine() in run-command.c? But this
> function cannot do anything if perl alread exits with an exotic code (>
> 128 even though no signal was received).
The exotic error code coming back from perl is 162. I can muck with it, if there was a value more useful to git.
*  553          } else if (WIFEXITED(status)) {
*  554                  code = WEXITSTATUS(status);
(eInspect 3,887):p code
$4 = 162
The perl code uses die to terminate with a non-specific non-zero error code. What it seems is that there is an assumed value that the git tests depend on, but perl.org describes the following:
"die raises an exception. Inside an eval the error message is stuffed into $@ and the eval is terminated with the undefined value. If the exception is outside of all enclosing evals, then the uncaught exception prints LIST to STDERR and exits with a non-zero value. If you need to exit the process with a specific exit code, see exit."
So it seems that we might need to either not use die or change the tests not to care about the exit code for specific tests involving perl. Suggestions?

Sincerely, Randall

-- Brief whoami:
  NonStop developer since approximately NonStop(211288444200000000)
  UNIX developer since approximately 421664400
-- In my real life, I talk too much.
Previous: Johannes SixtNext: Randall S. Becker
Message 4 of 9 in “[BUG] test_must_fail: does not correctly detect failures - Was Git 2.16.0-rc2 Test Summary on NonStop”
  1. Randall S. BeckerJan 13, 2018
  2. Randall S. BeckerJan 14, 2018
  3. Johannes SixtJan 14, 2018
  4. Randall S. BeckerJan 14, 2018
  5. Randall S. BeckerJan 15, 2018
  6. Johannes SixtJan 15, 2018
  7. Randall S. BeckerJan 15, 2018
  8. brian m. carlsonJan 16, 2018
  9. Randall S. BeckerJan 16, 2018

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.