Issue #7165
closedIf Pulp 2 has an errata with many different copies of the packagelist, all versions of the errata end up in every migrated repository containing the errata
Description
If an errata is present in multiple Pulp 2 repositories with different packagelists, each Pulp 3 repository containing the errata will end up with every individual form of the errata.
(pulp) [vagrant@pulp2-nightly-pulp3-source-centos7 devel]$ pulp-admin rpm repo content errata --repo-id test2
Description: Bear_Erratum
Id: RHEA-2012:0057
Severity:
Summary:
Title: Bear_ErratumPARTHA
Type: security
(pulp) [vagrant@pulp2-nightly-pulp3-source-centos7 devel]$ http GET :24817/pulp/api/v3/content/rpm/advisories/?repository_version=/pulp/api/v3/repositories/rpm/rpm/d18c672a-d6e9-4e6a-938f-3cf5a811db06/versions/1/
HTTP/1.1 200 OK
Allow: GET, POST, HEAD, OPTIONS
Connection: close
Content-Length: 1356
Content-Type: application/json
Date: Thu, 16 Jul 2020 20:01:07 GMT
Server: gunicorn/20.0.4
Vary: Accept, Cookie
X-Frame-Options: SAMEORIGIN
{
"count": 2,
"next": null,
"previous": null,
"results": [
{
"description": "Bear_Erratum",
"fromstr": "errata@redhat.com",
"id": "RHEA-2012:0057",
"issued_date": "2013-01-27 16:08:05",
"pkglist": [
{
"name": "collection-0",
"packages": [
{
"arch": "noarch",
"epoch": "0",
"filename": "bear-4.1-1.noarch.rpm",
"name": "bear",
"reboot_suggested": false,
"release": "1",
"relogin_suggested": false,
"restart_suggested": false,
"src": "http://www.fedoraproject.org",
"sum": "",
"sum_type": "",
"version": "4.1"
}
],
"shortname": ""
}
],
"pulp_created": "2020-07-16T19:55:54.463062Z",
"pulp_href": "/pulp/api/v3/content/rpm/advisories/0bb6563b-6c6b-437e-b86c-95b75e2e1625/",
"pushcount": "",
"reboot_suggested": false,
"references": [],
"release": "1",
"rights": "",
"severity": "",
"solution": "",
"status": "stable",
"summary": "",
"title": "Bear_ErratumPARTHA",
"type": "security",
"updated_date": "2013-01-27 16:08:05",
"version": "1"
},
{
"description": "Bear_Erratum",
"fromstr": "errata@redhat.com",
"id": "RHEA-2012:0057",
"issued_date": "2013-01-27 16:08:05",
"pkglist": [],
"pulp_created": "2020-07-16T19:55:54.456933Z",
"pulp_href": "/pulp/api/v3/content/rpm/advisories/930cd7e6-0945-40aa-81c9-cd29c9c056c4/",
"pushcount": "",
"reboot_suggested": false,
"references": [],
"release": "1",
"rights": "",
"severity": "",
"solution": "",
"status": "stable",
"summary": "",
"title": "Bear_ErratumPARTHA",
"type": "security",
"updated_date": "2013-01-27 16:08:05",
"version": "1"
}
]
}
Updated by dalley over 4 years ago
- Status changed from ASSIGNED to POST
Added by dalley over 4 years ago
Updated by dalley over 4 years ago
- Status changed from POST to MODIFIED
Applied in changeset pulp:pulp-2to3-migration|8a9c149a3d2162aecf7797d0cbceb2162401fdcb.
Added by dalley over 4 years ago
Revision a29b2f08 | View on GitHub
Fix a bug with multiple copies of an errata end up in a repo
The packagelist of an errata depends on content within the repo. When an errata is copied from one Pulp 2 repository to another, it is the same content unit but with a different package list, but in Pulp 3 these would be considered separate content units.
Because of this, when content is migrated, two Pulp 3 UpdateRecords are created from the same Pulp2Content. Later when content units are associated with the repositories, no accounting was being taken for the fact that this could be the case, and that we need to pick the particular content unit of the form that existed in the Pulp 2 repository rather than all of them.
Added by dalley over 4 years ago
Revision a29b2f08 | View on GitHub
Fix a bug with multiple copies of an errata end up in a repo
The packagelist of an errata depends on content within the repo. When an errata is copied from one Pulp 2 repository to another, it is the same content unit but with a different package list, but in Pulp 3 these would be considered separate content units.
Because of this, when content is migrated, two Pulp 3 UpdateRecords are created from the same Pulp2Content. Later when content units are associated with the repositories, no accounting was being taken for the fact that this could be the case, and that we need to pick the particular content unit of the form that existed in the Pulp 2 repository rather than all of them.
Added by dalley over 4 years ago
Revision a29b2f08 | View on GitHub
Fix a bug with multiple copies of an errata end up in a repo
The packagelist of an errata depends on content within the repo. When an errata is copied from one Pulp 2 repository to another, it is the same content unit but with a different package list, but in Pulp 3 these would be considered separate content units.
Because of this, when content is migrated, two Pulp 3 UpdateRecords are created from the same Pulp2Content. Later when content units are associated with the repositories, no accounting was being taken for the fact that this could be the case, and that we need to pick the particular content unit of the form that existed in the Pulp 2 repository rather than all of them.
Updated by dalley over 4 years ago
Applied in changeset pulp:pulp-2to3-migration|a29b2f08890c41be0de90709cd772e778d96e019.
Added by dalley over 4 years ago
Revision 7b90fa99 | View on GitHub
Fix a bug with multiple copies of an errata end up in a repo
The packagelist of an errata depends on content within the repo. When an errata is copied from one Pulp 2 repository to another, it is the same content unit but with a different package list, but in Pulp 3 these would be considered separate content units.
Because of this, when content is migrated, two Pulp 3 UpdateRecords are created from the same Pulp2Content. Later when content units are associated with the repositories, no accounting was being taken for the fact that this could be the case, and that we need to pick the particular content unit of the form that existed in the Pulp 2 repository rather than all of them.
closes: #7165 https://pulp.plan.io/issues/7165 (cherry picked from commit a29b2f08890c41be0de90709cd772e778d96e019)
Added by dalley over 4 years ago
Revision 7b90fa99 | View on GitHub
Fix a bug with multiple copies of an errata end up in a repo
The packagelist of an errata depends on content within the repo. When an errata is copied from one Pulp 2 repository to another, it is the same content unit but with a different package list, but in Pulp 3 these would be considered separate content units.
Because of this, when content is migrated, two Pulp 3 UpdateRecords are created from the same Pulp2Content. Later when content units are associated with the repositories, no accounting was being taken for the fact that this could be the case, and that we need to pick the particular content unit of the form that existed in the Pulp 2 repository rather than all of them.
closes: #7165 https://pulp.plan.io/issues/7165 (cherry picked from commit a29b2f08890c41be0de90709cd772e778d96e019)
Added by dalley over 4 years ago
Revision 7b90fa99 | View on GitHub
Fix a bug with multiple copies of an errata end up in a repo
The packagelist of an errata depends on content within the repo. When an errata is copied from one Pulp 2 repository to another, it is the same content unit but with a different package list, but in Pulp 3 these would be considered separate content units.
Because of this, when content is migrated, two Pulp 3 UpdateRecords are created from the same Pulp2Content. Later when content units are associated with the repositories, no accounting was being taken for the fact that this could be the case, and that we need to pick the particular content unit of the form that existed in the Pulp 2 repository rather than all of them.
closes: #7165 https://pulp.plan.io/issues/7165 (cherry picked from commit a29b2f08890c41be0de90709cd772e778d96e019)
Updated by dalley over 4 years ago
Applied in changeset pulp:pulp-2to3-migration|7b90fa99a9d87c15fefc3a8a7349d3632f9a18ae.
Updated by ttereshc over 4 years ago
- Status changed from MODIFIED to CLOSED - CURRENTRELEASE
Fix a bug with multiple copies of an errata end up in a repo
The packagelist of an errata depends on content within the repo. When an errata is copied from one Pulp 2 repository to another, it is the same content unit but with a different package list, but in Pulp 3 these would be considered separate content units.
Because of this, when content is migrated, two Pulp 3 UpdateRecords are created from the same Pulp2Content. Later when content units are associated with the repositories, no accounting was being taken for the fact that this could be the case, and that we need to pick the particular content unit of the form that existed in the Pulp 2 repository rather than all of them.
closes: #7165 https://pulp.plan.io/issues/7165