Bug 26810 - handle duplicate buildid data sources, with some stale
Summary: handle duplicate buildid data sources, with some stale
Status: RESOLVED FIXED
Alias: None
Product: elfutils
Classification: Unclassified
Component: debuginfod (show other bugs)
Version: unspecified
: P2 normal
Target Milestone: ---
Assignee: Not yet assigned to anyone
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2020-10-29 14:50 UTC by Frank Ch. Eigler
Modified: 2020-10-30 14:10 UTC (History)
1 user (show)

See Also:
Host:
Target:
Build:
Last reconfirmed:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Frank Ch. Eigler 2020-10-29 14:50:24 UTC
On a large debuginfod test server, we observed that it's possible to have the same rpm/buildid identified with multiple locations, if the same content is accessible along several paths.  That part's fine, but if some of the paths change - get removed - and before the next grooming pass, debuginfod gets confused.  That's because multiple matches are tried in series (a sqlite scan loop), but an exception ("file not found") from one iteration can unintentionally cancel the scan.

So we just need to put a try/catch around the handle_buildid_* function, to assure that other locations of the same content are attempted, regardless of exceptions.
Comment 1 Frank Ch. Eigler 2020-10-30 14:10:32 UTC
commit f5015aebdb33