Improve NuGet symbol packages
Everyone can contribute. Help move this issue forward while earning points, leveling up and collecting rewards.
Description
The NuGet symbol packages were implemented as a One -> Many association with the packages. Every symbol package is connected with one package. It allows to avoid keeping duplicate symbol packages and save the storage space. But it also brings the limitations:
- Data consistency: only the first unique uploaded package will be associated with the symbol package. Later, in case the information about the attached symbols need to be displayed on the UI, then it'll be available only on the first package but not all packages.
- Increased error rate: when the uploaded package file is in processing, we try to create the symbol package for every
*.pdbfile link, but with the unique signature, and it often leads to the relatively high error rate logs (internal) in the underlying service, that is responsible for creating the symbols, because the symbol package might be already created for another package.
Proposal
Change the association between NuGet packages and NuGet symbol packages from One -> Many to Many -> Many. It'll allow us to associate more than one package with a symbol without duplicating symbols.
Edited by 🤖 GitLab Bot 🤖