Fix the listing benchmark on .NET 11 and build it in CI - #180
Merged
Conversation
…ot recur
tools/MUI.Listing.Benchmarks pinned net10.0 over Directory.Build.props and references
tests/MUI.Web.Tests, which the .NET 11 move retargeted -- so on main it fails restore with NU1201
("MUI.Web.Tests is not compatible with net10.0"). Nothing noticed because it was never in
MUIndex.slnx, so CI never built it, while docs/memory-incident-2026-09-07.md tells readers to run
it. The pin goes, it inherits net11.0, and it joins the solution beside MUI.Streaming.Prototype.
Run as the doc says: 0.45/0.41 MB per facet request and 5.92 MB per 900-row render, matching the
doc's table.
Also corrects ModelContextProtocol.AspNetCore's comment, which justified its pin by the runtimes
its nuspec names. 2.2.0 is still the newest release and names nothing past net10.0, so on .NET 11
its net10.0 asset is what resolves; MUI.Web.Tests' MCP cases show that runs.
Checked while here and found fine: production's DOTNET_DbgEnableMiniDump settings still produce a
dump on the .NET 11 RC 1 runtime (a deliberate FailFast wrote /dumps/muindex-<pid>.dmp), and the
aspnet image's app user is unchanged at UID 1654 with home /home/app, so the dumps and
Data Protection volumes the .NET 10 image created stay writable.
Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
|
Warning Review limit reached
On-demand reviews are free for the next 28 days. After that, they cost $0.25 per reviewed file. Or wait 41 minutes for your next included review. View limit detailsLimit details: You’ve used the included review currently available. Your 95 included PR review attempts over the past 7 days set your current allowance at 1 review per hour. Review configuration: ⚙️ Run configurationConfiguration used: Organization UI Review profile: ASSERTIVE Plan: Essentials Run ID: 📒 Files selected for processing (3)
Comment |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Follow-up to #179 (.NET 11 RC 1). This comes from a sweep of what the version change could have broken outside the files #179 touched.
Fixed
tools/MUI.Listing.Benchmarkswas broken onmain. It pinnednet10.0overDirectory.Build.propsand referencestests/MUI.Web.Tests, which Move to .NET 11 release candidate 1 #179 retargeted tonet11.0. Restore fails withNU1201: Project MUI.Web.Tests is not compatible with net10.0. CI couldn't notice: the tool was never inMUIndex.slnx, whiledocs/memory-incident-2026-09-07.mdtells readers to run it. The pin goes, and the tool joins the solution besideMUI.Streaming.Prototype, so CI now builds it. Run as the doc says, it prints 0.45/0.41 MB per facet request and 5.92 MB per 900-row render, matching the doc's table.ModelContextProtocol.AspNetCorecomment justified the pin by the runtimes the package's nuspec names. 2.2.0 is still the newest release and names nothing pastnet10.0, so on .NET 11 itsnet10.0asset is what resolves.MUI.Web.Tests' MCP cases show that runs. The comment now says so, and says to move to the first release that namesnet11.0.Checked and found fine: nothing in
deploy/needed changingdeploy/compose.production.yamlsetsDOTNET_DbgEnableMiniDump=1,DOTNET_DbgMiniDumpType=2andDOTNET_DbgMiniDumpName=/dumps/muindex-%p.dmp. I ran a deliberateEnvironment.FailFastin the RC 1 SDK image with exactly those settings.createdump(runtime11.0.0-rc.1.26425.128) wrote a 52 MB/dumps/muindex-<pid>.dmp.dumpsand Data Protectionkeysvolumes were created by the .NET 10 image as itsappuser.aspnet:11.0.0-rc.1has the same user:app:x:1654:1654::/home/app, identical toaspnet:10.0, withAPP_UID=1654. So the existing volumes stay writable. Had the UID moved, Data Protection would silently fall back to ephemeral keys, which is the antiforgery-400 incident the Dockerfile documents.deploy/memory-watch.shreads cgroup files and/proc; nothing in it depends on the runtime.deploy/muindex.service, the Traefik config and the I3 sidecar config don't reference .NET at all.deploy/setsDOTNET_GC*; the runtime reads the cgroup limit as before.Verification
dotnet build MUIndex.slnx -c Release: 0 warnings, 0 errors, now including the benchmark.tools/check-image-restore.pypasses; the image's restore set is unchanged.🤖 Generated with Claude Code