Await WhenNominated when a project has a pending nomination #11132
Labels
Priority:2
Issues for the current backlog.
Product:VS.Client
Tenet:Performance
Performance issues
Type:Bug
Milestone
Visual Studio Version:
17.0 preview 3
Summary:
IVsProjectRestoreInfoSource.WhenNominated is not awaited so it returns immediately.
This basically causes NuGet to have to invoke
WhenNominated
multiple times on the same project.This basically leads to NuGet not being able to accurately reason about the effectiveness of the batching, as it pollutes the data with a high number of checks.
NuGet still gets to batch the restores, but there are caveats.
To fully understand what's going on, I added the following logging: https://github.com/NuGet/NuGet.Client/compare/dev-nkolev92-logging?expand=1.
I have added the logs at the bottom.
Steps to Reproduce:
dev-nkolev92-testBranchSwitch
on the commandline.dev-nkolev92-testBranchSwitch2
in Visual Studio and observe 1 restore.You can observe the vs/nuget/restoreinformation telemetry and see that ProjectsReadyCheckCount is 100+ instead of the expected 2.
cc @ocallesp @lifengl
RestoreCheckLogs.txt
The text was updated successfully, but these errors were encountered: