You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Interestingly, the error code is ERROR_STACK_OVERFLOW, so there are two valid error codes we can get for stack overflow probably depending on where it stemmed from.
I'll update the test to allow both of the codes. In fact, I think I've seen that in the past and that I was already handling both of them.
@BruceForstall this is a different issue from the one in the title (and that I have fixed already last week). Here the stack overflow fails just with StackOverflow message and no stack trace dumped. But we can repurpose this issue for it too.
baseservices\exceptions\stackoverflow\stackoverflowtester\stackoverflowtester.cmd [FAIL]
Return code: 1
Raw output file: C:\h\w\BA7409D2\w\B0520902\uploads\Reports\baseservices.exceptions\stackoverflow\stackoverflowtester\stackoverflowtester.output.txt
Raw output:
BEGIN EXECUTION
"C:\h\w\BA7409D2\p\corerun.exe" -p "System.Reflection.Metadata.MetadataUpdater.IsSupported=false" stackoverflowtester.dll
Running stackoverflow test(smallframe main)
"Stack overflow."
"Repeat 35230 times:"
"--------------------------------"
" at TestStackOverflow.Program.InfiniteRecursionB()"
" at TestStackOverflow.Program.InfiniteRecursionA()"
" at TestStackOverflow.Program.InfiniteRecursionC()"
"--------------------------------"
" at TestStackOverflow.Program.InfiniteRecursionB()"
" at TestStackOverflow.Program.InfiniteRecursionA()"
" at TestStackOverflow.Program.Test(Boolean)"
" at TestStackOverflow.Program.Main(System.String[])"
""
Running stackoverflow test(largeframe main)
"Stack overflow."
"Repeat 8 times:"
"--------------------------------"
" at TestStackOverflow.Program.InfiniteRecursionC2()"
" at TestStackOverflow.Program.InfiniteRecursionB2()"
" at TestStackOverflow.Program.InfiniteRecursionA2()"
"--------------------------------"
" at TestStackOverflow.Program.Test(Boolean)"
" at TestStackOverflow.Program.Main(System.String[])"
""
Running stackoverflow test(smallframe secondary)
"Stack overflow."
"Repeat 35297 times:"
"--------------------------------"
" at TestStackOverflow.Program.InfiniteRecursionA()"
" at TestStackOverflow.Program.InfiniteRecursionC()"
" at TestStackOverflow.Program.InfiniteRecursionB()"
"--------------------------------"
" at TestStackOverflow.Program.InfiniteRecursionA()"
" at TestStackOverflow.Program.Test(Boolean)"
" at TestStackOverflow.Program+<>c__DisplayClass7_0.<SecondaryThreadsTest>b__0()"
" at System.Threading.Thread+StartHelper.Run()"
" at System.Runtime.CompilerServices.RuntimeHelpers.DispatchTailCalls(IntPtr, Void (IntPtr, IntPtr, System.Runtime.CompilerServices.PortableTailCallFrame*), IntPtr)"
" at System.Threading.Thread.StartCallback()"
""
Running stackoverflow test(largeframe secondary)
"Stack overflow."
"Repeat 8 times:"
"--------------------------------"
" at TestStackOverflow.Program.InfiniteRecursionC2()"
" at TestStackOverflow.Program.InfiniteRecursionB2()"
" at TestStackOverflow.Program.InfiniteRecursionA2()"
"--------------------------------"
" at TestStackOverflow.Program.Test(Boolean)"
" at TestStackOverflow.Program+<>c__DisplayClass7_0.<SecondaryThreadsTest>b__0()"
" at System.Threading.Thread+StartHelper.Run()"
" at System.Runtime.CompilerServices.RuntimeHelpers.DispatchTailCalls(IntPtr, Void (IntPtr, IntPtr, System.Runtime.CompilerServices.PortableTailCallFrame*), IntPtr)"
" at System.Threading.Thread.StartCallback()"
""
Running stackoverflow3 test()
Call number 50 to the Execute method
Call number 100 to the Execute method
Call number 150 to the Execute method
"Stack overflow."
""
Missing "Main" method frame at the last line
Expected: 100
Actual: 105
END EXECUTION - FAILED
FAILED
A rough Kusto query shows a number of failures with different causes:
let test_name = "stackoverflowtester";
Jobs
| join WorkItems on JobId
| join TestResults on WorkItemId
| where Type1 contains test_name
and Status <> "Pass" and (Method == "cmd" or Method == "sh")
| project Queued, Pipeline = parse_json(Properties).DefinitionName, Pipeline_Configuration = parse_json(Properties).configuration,
OS = QueueName, Arch = parse_json(Properties).architecture, Test = Type1, Result, Duration, Console_log = Message, WorkItemFriendlyName, Method
| order by Queued desc
Activity
elinor-fung commentedon Feb 11, 2022
Related: #63325
elinor-fung commentedon Feb 11, 2022
Seems like an intermittent failure.
cc @janvorli
janvorli commentedon Feb 11, 2022
Interestingly, the error code is ERROR_STACK_OVERFLOW, so there are two valid error codes we can get for stack overflow probably depending on where it stemmed from.
I'll update the test to allow both of the codes. In fact, I think I've seen that in the past and that I was already handling both of them.
BruceForstall commentedon Feb 22, 2022
More failure cases: https://dev.azure.com/dnceng/public/_build/results?buildId=1622858&view=ms.vss-test-web.build-test-results-tab&runId=45101972&resultId=108151&paneView=debug
janvorli commentedon Feb 22, 2022
@BruceForstall this is a different issue from the one in the title (and that I have fixed already last week). Here the stack overflow fails just with StackOverflow message and no stack trace dumped. But we can repurpose this issue for it too.
BruceForstall commentedon Apr 26, 2022
I see another case of the failure:
https://dev.azure.com/dnceng/public/_build/results?buildId=1737021&view=ms.vss-test-web.build-test-results-tab&runId=47017162&resultId=106165&paneView=dotnet-dnceng.dnceng-build-release-tasks.helix-test-information-tab
A rough Kusto query shows a number of failures with different causes:
janvorli commentedon Jul 18, 2022
According to Kusto, this issue doesn't occur anymore.