diff --git a/services/libs/data-access-layer/src/osspckgs/api.ts b/services/libs/data-access-layer/src/osspckgs/api.ts index 24850b4b68..a2f5a1d688 100644 --- a/services/libs/data-access-layer/src/osspckgs/api.ts +++ b/services/libs/data-access-layer/src/osspckgs/api.ts @@ -312,7 +312,7 @@ export async function getPackageStatusCounts( FROM package_repos pr JOIN repos r ON r.id = pr.repo_id WHERE pr.package_id = p.id - ORDER BY pr.confidence DESC + ORDER BY pr.confidence DESC, pr.repo_id DESC LIMIT 1 ) r_sc ON true ${where} @@ -492,7 +492,7 @@ export async function listPackagesForApi( FROM package_repos pr JOIN repos r ON r.id = pr.repo_id WHERE pr.package_id = p.id - ORDER BY pr.confidence DESC + ORDER BY pr.confidence DESC, pr.repo_id DESC LIMIT 1 ) r_sc ON true` @@ -714,7 +714,7 @@ export async function getPackageDetailByPurl( SELECT pr2.repo_id, pr2.confidence FROM package_repos pr2 WHERE pr2.package_id = p.id - ORDER BY pr2.confidence DESC, (pr2.source = 'declared') DESC + ORDER BY pr2.confidence DESC, (pr2.source = 'declared') DESC, pr2.repo_id DESC LIMIT 1 ) pr ON true LEFT JOIN repos r ON r.id = pr.repo_id @@ -781,7 +781,7 @@ export async function listPackagesForScatter( FROM package_repos pr JOIN repos r ON r.id = pr.repo_id WHERE pr.package_id = p.id - ORDER BY pr.confidence DESC + ORDER BY pr.confidence DESC, pr.repo_id DESC LIMIT 1 ) r_sc ON true WHERE p.is_critical = true diff --git a/services/libs/tinybird/pipes/ossPackages_enriched.pipe b/services/libs/tinybird/pipes/ossPackages_enriched.pipe index 6140ae63d0..41da11f770 100644 --- a/services/libs/tinybird/pipes/ossPackages_enriched.pipe +++ b/services/libs/tinybird/pipes/ossPackages_enriched.pipe @@ -18,7 +18,10 @@ SQL > NODE ossPackages_enriched_pkg_repo SQL > - SELECT packageId, argMax(repoId, (toFloat64OrZero(confidence), verifiedAt)) AS repoId, 1 AS hasRepo + SELECT + packageId, + argMax(repoId, (toFloat64OrZero(confidence), verifiedAt, repoId)) AS repoId, + 1 AS hasRepo FROM packageRepos FINAL GROUP BY packageId