{"thread":{"id":"51140","subject":"[Breakage] 2.22.0-rc1 - t0211-trace2-perf.sh","startedAt":"2019-05-21T11:11:29Z","lastAt":"2019-05-21T16:55:29Z","messageCount":5,"participants":["Randall S. Becker","Ævar Arnfjörð Bjarmason","Duy Nguyen","Jeff Hostetler"],"isPatch":false,"patchVersion":null,"patchTotal":null},"messages":[{"id":"375989","messageId":"019e01d50fc2$324bd400$96e37c00$@nexbridge.com","threadId":"51140","inReplyTo":null,"subject":"[Breakage] 2.22.0-rc1 - t0211-trace2-perf.sh","fromName":"Randall S. Becker","fromEmail":"rsbecker@nexbridge.com","sentAt":"2019-05-21T10:44:36Z","receivedAt":"2019-05-21T11:11:29Z","isPatch":false,"sender":{"key":"randall.becker@nexbridge.ca","avatar":"https://avatars.githubusercontent.com/u/28956764?v=4"},"body":"Hi All,\n\nOn the NonStop platform, the entire test for t0211-trace2-perf.sh does not\nwork. The first case, in verbose, reports:\n\nWe get errors when the script is run:\n\nUse of uninitialized value within @tokens in pattern match (m//) at\nt0211/scrub_perf.perl line 29, <> line 1.\n\nInitialized empty Git repository in /home/git/git/t/trash\ndirectory.t0211-trace2-perf/.git/\nexpecting success:\n        test_when_finished \"rm trace.perf actual expect\" &&\n        GIT_TR2_PERF=\"$(pwd)/trace.perf\" test-tool trace2 001return 0 &&\n        perl \"$TEST_DIRECTORY/t0211/scrub_perf.perl\" <trace.perf >actual &&\n        cat >expect <<-EOF &&\n                d0|main|version|||||$V\n                d0|main|start||_T_ABS_|||_EXE_ trace2 001return 0\n                d0|main|cmd_name|||||trace2 (trace2)\n                d0|main|exit||_T_ABS_|||code:0\n                d0|main|atexit||_T_ABS_|||code:0\n        EOF\n        test_cmp expect actual\n\n--- expect      2019-05-21 10:38:47 +0000\n+++ actual      2019-05-21 10:38:47 +0000\n@@ -1,5 +1,5 @@\n-d0|main|version|||||2.22.0.rc1\n-d0|main|start||_T_ABS_|||_EXE_ trace2 001return 0\n-d0|main|cmd_name|||||trace2 (trace2)\n-d0|main|exit||_T_ABS_|||code:0\n-d0|main|atexit||_T_ABS_|||code:0\n+d0|th01:unknown|version|||||2.22.0.rc1\n+d0|th02:unknown|start||_T_ABS_|||_EXE_ trace2 001return 0\n+d0|th03:unknown|cmd_name|||||trace2 (trace2)\n+d0|th04:unknown|exit||_T_ABS_|||code:0\n+d0|th06:unknown|atexit||_T_ABS_|||code:0\n\nOur perl is v5.24.0 and this cannot be upgraded.\n\nThoughts?\n\nRandall\n\n-- Brief whoami:\n NonStop developer since approximately 211288444200000000\n UNIX developer since approximately 421664400\n-- In my real life, I talk too much.\n\n\n\n"},{"id":"375992","messageId":"87a7fguiwn.fsf@evledraar.gmail.com","threadId":"51140","inReplyTo":"019e01d50fc2$324bd400$96e37c00$@nexbridge.com","subject":"Re: [Breakage] 2.22.0-rc1 - t0211-trace2-perf.sh","fromName":"Ævar Arnfjörð Bjarmason","fromEmail":"avarab@gmail.com","sentAt":"2019-05-21T11:49:28Z","receivedAt":"2019-05-21T11:49:32Z","isPatch":false,"sender":{"key":"avarab@gmail.com","avatar":"https://avatars.githubusercontent.com/u/45301?v=4"},"body":"\nOn Tue, May 21 2019, Randall S. Becker wrote:\n\n> Hi All,\n>\n> On the NonStop platform, the entire test for t0211-trace2-perf.sh does not\n> work. The first case, in verbose, reports:\n>\n> We get errors when the script is run:\n>\n> Use of uninitialized value within @tokens in pattern match (m//) at\n> t0211/scrub_perf.perl line 29, <> line 1.\n\nCould you intrument that test top \"cat\" the raw trace.perf you get?\n\nThat's some bug in the perl side of the parsing.\n\nBut the real bug looks like the trace2 code unconditionally depending on\npthreads, even though NonStop has 'NO_PTHREADS = UnfortunatelyYes'\ndefined.\n\nThat's why we get this th%d:unknown stuff, the trace2/tr2_tls.c code\nusing pthreads is failing with whatever pthread-bizarro NonStop has.\n\nThat seems easy enough to \"fix\", just always fake up \"main\" if we don't\nhave pthreads, but perhaps Jeff H. has another opinion on it...\n\n> Initialized empty Git repository in /home/git/git/t/trash\n> directory.t0211-trace2-perf/.git/\n> expecting success:\n>         test_when_finished \"rm trace.perf actual expect\" &&\n>         GIT_TR2_PERF=\"$(pwd)/trace.perf\" test-tool trace2 001return 0 &&\n>         perl \"$TEST_DIRECTORY/t0211/scrub_perf.perl\" <trace.perf >actual &&\n>         cat >expect <<-EOF &&\n>                 d0|main|version|||||$V\n>                 d0|main|start||_T_ABS_|||_EXE_ trace2 001return 0\n>                 d0|main|cmd_name|||||trace2 (trace2)\n>                 d0|main|exit||_T_ABS_|||code:0\n>                 d0|main|atexit||_T_ABS_|||code:0\n>         EOF\n>         test_cmp expect actual\n>\n> --- expect      2019-05-21 10:38:47 +0000\n> +++ actual      2019-05-21 10:38:47 +0000\n> @@ -1,5 +1,5 @@\n> -d0|main|version|||||2.22.0.rc1\n> -d0|main|start||_T_ABS_|||_EXE_ trace2 001return 0\n> -d0|main|cmd_name|||||trace2 (trace2)\n> -d0|main|exit||_T_ABS_|||code:0\n> -d0|main|atexit||_T_ABS_|||code:0\n> +d0|th01:unknown|version|||||2.22.0.rc1\n> +d0|th02:unknown|start||_T_ABS_|||_EXE_ trace2 001return 0\n> +d0|th03:unknown|cmd_name|||||trace2 (trace2)\n> +d0|th04:unknown|exit||_T_ABS_|||code:0\n> +d0|th06:unknown|atexit||_T_ABS_|||code:0\n>\n> Our perl is v5.24.0 and this cannot be upgraded.\n>\n> Thoughts?\n>\n> Randall\n>\n> -- Brief whoami:\n>  NonStop developer since approximately 211288444200000000\n>  UNIX developer since approximately 421664400\n> -- In my real life, I talk too much.\n"},{"id":"375993","messageId":"CACsJy8DhsU6CL95W9gsWaTSnN+_7Z_+Q7yPjhuDRRKfCrhnz2w@mail.gmail.com","threadId":"51140","inReplyTo":"87a7fguiwn.fsf@evledraar.gmail.com","subject":"Re: [Breakage] 2.22.0-rc1 - t0211-trace2-perf.sh","fromName":"Duy Nguyen","fromEmail":"pclouds@gmail.com","sentAt":"2019-05-21T11:59:28Z","receivedAt":"2019-05-21T11:59:56Z","isPatch":false,"sender":{"key":"pclouds@gmail.com","avatar":"https://avatars.githubusercontent.com/u/720?v=4"},"body":"On Tue, May 21, 2019 at 6:51 PM Ævar Arnfjörð Bjarmason\n<avarab@gmail.com> wrote:\n> But the real bug looks like the trace2 code unconditionally depending on\n> pthreads, even though NonStop has 'NO_PTHREADS = UnfortunatelyYes'\n> defined.\n>\n> That's why we get this th%d:unknown stuff, the trace2/tr2_tls.c code\n> using pthreads is failing with whatever pthread-bizarro NonStop has.\n>\n> That seems easy enough to \"fix\", just always fake up \"main\" if we don't\n> have pthreads, but perhaps Jeff H. has another opinion on it...\n\nThat's not NonStop. thread-utils.h (re)defines pthread_getspecific()\nto return NULL when NO_PTHREADS, which triggers this I think.\n-- \nDuy\n"},{"id":"375994","messageId":"000501d50fd6$24c0f0e0$6e42d2a0$@nexbridge.com","threadId":"51140","inReplyTo":"CACsJy8DhsU6CL95W9gsWaTSnN+_7Z_+Q7yPjhuDRRKfCrhnz2w@mail.gmail.com","subject":"RE: [Breakage] 2.22.0-rc1 - t0211-trace2-perf.sh","fromName":"Randall S. Becker","fromEmail":"rsbecker@nexbridge.com","sentAt":"2019-05-21T13:07:23Z","receivedAt":"2019-05-21T13:07:34Z","isPatch":false,"sender":{"key":"randall.becker@nexbridge.ca","avatar":"https://avatars.githubusercontent.com/u/28956764?v=4"},"body":"On May 21, 2019 07:59, Duy Nguyen wrote:\n> On Tue, May 21, 2019 at 6:51 PM Ævar Arnfjörð Bjarmason\n> <avarab@gmail.com> wrote:\n> > But the real bug looks like the trace2 code unconditionally depending\n> > on pthreads, even though NonStop has 'NO_PTHREADS =\n> UnfortunatelyYes'\n> > defined.\n> >\n> > That's why we get this th%d:unknown stuff, the trace2/tr2_tls.c code\n> > using pthreads is failing with whatever pthread-bizarro NonStop has.\n> >\n> > That seems easy enough to \"fix\", just always fake up \"main\" if we\n> > don't have pthreads, but perhaps Jeff H. has another opinion on it...\n> \n> That's not NonStop. thread-utils.h (re)defines pthread_getspecific() to return\n> NULL when NO_PTHREADS, which triggers this I think.\n\nThe platform *is* NonStop, which has SPT and PUT pthreads, but we have never been able to make them work with git, so did not include them in the configuration.\n\n"},{"id":"376003","messageId":"92cfdf43-8841-9c5a-7838-dda995038908@jeffhostetler.com","threadId":"51140","inReplyTo":"000501d50fd6$24c0f0e0$6e42d2a0$@nexbridge.com","subject":"Re: [Breakage] 2.22.0-rc1 - t0211-trace2-perf.sh","fromName":"Jeff Hostetler","fromEmail":"git@jeffhostetler.com","sentAt":"2019-05-21T16:55:25Z","receivedAt":"2019-05-21T16:55:29Z","isPatch":false,"sender":{"key":"git@jeffhostetler.com","avatar":null},"body":"\n\nOn 5/21/2019 9:07 AM, Randall S. Becker wrote:\n> On May 21, 2019 07:59, Duy Nguyen wrote:\n>> On Tue, May 21, 2019 at 6:51 PM Ævar Arnfjörð Bjarmason\n>> <avarab@gmail.com> wrote:\n>>> But the real bug looks like the trace2 code unconditionally depending\n>>> on pthreads, even though NonStop has 'NO_PTHREADS =\n>> UnfortunatelyYes'\n>>> defined.\n>>>\n>>> That's why we get this th%d:unknown stuff, the trace2/tr2_tls.c code\n>>> using pthreads is failing with whatever pthread-bizarro NonStop has.\n>>>\n>>> That seems easy enough to \"fix\", just always fake up \"main\" if we\n>>> don't have pthreads, but perhaps Jeff H. has another opinion on it...\n>>\n>> That's not NonStop. thread-utils.h (re)defines pthread_getspecific() to return\n>> NULL when NO_PTHREADS, which triggers this I think.\n> \n> The platform *is* NonStop, which has SPT and PUT pthreads, but we have never been able to make them work with git, so did not include them in the configuration.\n> \n\nI just reproduced this on my Mac with NO_PTHREADS defined.\nI'll post a fix shortly.\n\nJeff\n"}]}