Re-Bootstrap to .NET 11.0.100-preview.2.26117.112#4933
Re-Bootstrap to .NET 11.0.100-preview.2.26117.112#4933dotnet-bot wants to merge 1 commit intomainfrom
Conversation
|
It's something in MSBuild. Trying to get a dump -- tricky when it's consuming all my memory. |
|
Yeah, something has definitely changed with MSBuild memory use. @rainersigwald could you take a look? Those are the MSBuild worker processes. |
|
Nothing is jumping out at me in dotnet/msbuild@6b7a28c...81815e5 as likely to cause a problem like that. Will try to get a local repro. |
|
Behavior appears different on Windows vs Linux; my Windows build is failing but not crashing but my Linux build crashed the entire WSL VM? |
|
Looks like it's not a single process going bananas but an accumulation of them--my initial WSL attempt crashed during runtime restore (as best as I can tell from logs) but continuing from that point got through runtime and then crashed while building sourcelink + efcore. Could/should we try reverting MSBuild to the prior state to see if it's in MSBuild vs. runtime? |
|
FWIW vbcscompiler seemed relatively similar to where it was before, so that's why I hypothesized MSBuild, not CLR. |
Tried to simulate this on my machine by manually patching the MSBuild bits back to the LKG: cp ~/src/lkg_sdk/sdk/11.0.100-preview.1.26104.118/{MSBuild,Microsoft.Build{,.{Framework,{Tasks,Utilities}.Core}}}.dll .dotnet/sdk/11.0.100-preview.2.26117.112/And see very similar crash symptoms (during runtime restore). Since I keep seeing it during restore I'm going to try patching NuGet back next. |
Still crashes with NuGet built at the commit from the old SDK. I think that leaves SDK and runtime as the likeliest suspects? |
|
Nope, spoke too soon, |
|
^ and that's because I built debug, I think. Trying with release nuget. |
|
With just NuGet@1f8b2d8c release overlaid on the SDK I still get a crash, this one seems to be when restoring Roslyn and runtime (and doing various other things). ❯ rg '\] Building' C:\Users\raines\Downloads\overall.log
42: [19:36:41.49] Building arcade
61: [19:39:05.70] Building arcade...done
107: [19:39:06.64] Building razor
133: [19:39:06.66] Building winforms
159: [19:39:06.76] Building templating
175: [19:39:06.77] Building command-line-api
211: [19:39:06.77] Building cecil
237: [19:39:06.79] Building symreader
263: [19:39:06.80] Building deployment-tools
289: [19:39:06.81] Building nuget-client
315: [19:39:06.83] Building emsdk
341: [19:39:06.84] Building msbuild
367: [19:39:06.88] Building fsharp
393: [19:39:06.90] Building diagnostics
419: [19:39:06.99] Building xdt
445: [19:39:22.56] Building cecil...done
449: [19:39:36.04] Building xdt...done
453: [19:39:45.76] Building deployment-tools...done
456: [19:39:55.31] Building symreader...done
460: [19:40:05.70] Building diagnostics...done
464: [19:40:08.18] Building winforms...done
470: [19:40:15.86] Building vstest
496: [19:40:18.14] Building wpf
523: [19:40:18.22] Building command-line-api...done
529: [19:40:34.22] Building runtime
555: [19:40:39.98] Building roslyn
581: [19:41:50.04] Building templating...done
619: [19:42:03.12] Building wpf...done
625: [19:42:06.28] Building windowsdesktop
654: [19:42:44.87] Building windowsdesktop...done@agocke is there a good way to falsify CLR involvement here? Maybe a set of files I can patch in the SDK to keep that constant while updating everything else? |
|
You mean like the shared framework? netcoreapp, basically? |
|
Does this replicate when we build from source? Without using the LKG? That would let us bisect commit-by-commit, presumably. |
#124928) This reverts commit 92741be. This was causing excessive memory allocation during jitting (see dotnet/dotnet#4933).
…AP) + VN cache (#124132)" (#124955) Backport of #124928 to release/11.0-preview2 /cc @akoeplinger @AndyAyersMS ## Customer Impact - [ ] Customer reported - [x] Found internally This was causing excessive memory allocation during jitting (see dotnet/dotnet#4933). ## Regression - [X] Yes - [ ] No Caused by: 92741be ## Testing Manual testing. ## Risk Low. Reverts an earlier change. [High/Medium/Low. Justify the indication by mentioning how risks were measured and addressed.] **IMPORTANT**: If this backport is for a servicing release, please verify that: - For .NET 8 and .NET 9: The PR target branch is `release/X.0-staging`, not `release/X.0`. - For .NET 10+: The PR target branch is `release/X.0` (no `-staging` suffix). ## Package authoring no longer needed in .NET 9 **IMPORTANT**: Starting with .NET 9, you no longer need to edit a NuGet package's csproj to enable building and bump the version. Keep in mind that we still need package authoring in .NET 8 and older versions. Co-authored-by: Andy Ayers <andya@microsoft.com>
Re-Bootstrap .NET to 11.0.0-preview.2.26117.112 / 11.0.100-preview.2.26117.112.