Skip to content

Commit 4c77f91

Browse files
authored
Update range's vulnerability before entity update to fix index uniqueness error (#8140)
1 parent 37f3885 commit 4c77f91

1 file changed

Lines changed: 2 additions & 2 deletions

File tree

src/NuGetGallery.Services/PackageManagement/PackageVulnerabilityService.cs

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -231,7 +231,6 @@ private void UpdateRangesOfPackageVulnerability(PackageVulnerability vulnerabili
231231
var newRanges = vulnerability.AffectedRanges
232232
.Except(existingVulnerability.AffectedRanges, rangeComparer)
233233
.ToList();
234-
_entitiesContext.VulnerableRanges.AddRange(newRanges);
235234
foreach (var newRange in newRanges)
236235
{
237236
_logger.LogInformation(
@@ -240,7 +239,8 @@ private void UpdateRangesOfPackageVulnerability(PackageVulnerability vulnerabili
240239
newRange.PackageVersionRange,
241240
vulnerability.GitHubDatabaseKey);
242241

243-
newRange.Vulnerability = existingVulnerability;
242+
newRange.Vulnerability = existingVulnerability; // this needs to happen before we update _entitiesContext, otherwise index uniqueness conflicts occur
243+
_entitiesContext.VulnerableRanges.Add(newRange);
244244
existingVulnerability.AffectedRanges.Add(newRange);
245245
ProcessNewVulnerabilityRange(newRange, packagesToUpdate);
246246
}

0 commit comments

Comments
 (0)