How to determine the repository to run Verify Checksum on for reported corrupted RPMs
Issue
Satellite 6.9 upgrade to 6.10 requires a content migration where all content on the Satellite is verified before importing into the Postgres database used by Pulp3. A message like the one below is seen when content on the filesystem does not match the checksum of the RPM in the database:
============Missing/Corrupted Content Summary================
WARNING: MISSING OR CORRUPTED CONTENT DETECTED
Corrupted or Missing Rpm: 1000/173142
Corrupted or missing content has been detected, you can examine the list of content in /tmp/unmigratable_content-20220109-11817-1oil4a6 and take action by either:
1. Performing a 'Verify Checksum' sync under Advanced Sync Options, let it complete, and re-running the migration
2. Deleting/disabling the affected repositories and running orphan cleanup (foreman-rake katello:delete_orphaned_content) and re-running the migration
3. Manually correcting files on the filesystem in /var/lib/pulp/content/ and re-running the migration
4. Mark currently corrupted or missing content as skipped (foreman-rake katello:approve_corrupted_migration_content). This will skip migration of missing or corrupted content.
The resolution for this solution article is to help a user identify the repository that an RPM belongs to so that they may know which repositories to perform 'Verify Checksum' on.
Environment
Satellite 6.9
Subscriber exclusive content
A Red Hat subscription provides unlimited access to our knowledgebase, tools, and much more.