Bug 798656 - Packages conflicting when signed with different gpg key
Packages conflicting when signed with different gpg key
Status: CLOSED CURRENTRELEASE
Product: Pulp
Classification: Community
Component: user-experience (Show other bugs)
1.1.0
Unspecified Unspecified
unspecified Severity high
: ---
: Sprint 34
Assigned To: Pradeep Kilambi
Preethi Thomas
: Triaged
Depends On:
Blocks: 798301 916326 921250
  Show dependency treegraph
 
Reported: 2012-02-29 09:10 EST by Ivan Necas
Modified: 2013-09-09 12:33 EDT (History)
2 users (show)

See Also:
Fixed In Version:
Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of:
: 916326 (view as bug list)
Environment:
Last Closed: 2012-05-25 10:15:35 EDT
Type: ---
Regression: ---
Mount Type: ---
Documentation: ---
CRM:
Verified Versions:
Category: ---
oVirt Team: ---
RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: ---


Attachments (Terms of Use)
Script to reproduce conflict issue (469 bytes, application/x-shellscript)
2012-02-29 09:10 EST, Ivan Necas
no flags Details

  None (edit)
Description Ivan Necas 2012-02-29 09:10:48 EST
Created attachment 566552 [details]
Script to reproduce conflict issue

Description of problem:
When we synchronize two repositories, with roughly the same content, but signed with different gpg keys (e.g. one is official CDN, and second is a Brew repo), there might occur conflicts: two packages with the same checksum prefix (Pulp uses first 3 characters of checksum to distinguish them.) It seemed improbable to hit the conflict, but we just did in Katello.

It results links to point to different package, than repodata says. And this then causes another issue, like one described in steps to reproduce

Version-Release number of selected component (if applicable):


How reproducible:


Steps to Reproduce: (script attached):

pulp-admin repo create --id rh-repo --name rh-repo --feed http://inecas.fedorapeople.org/fakerepos/rh-repo --relativepath=rh-repo
pulp-admin repo sync --id rh-repo -F
pulp-admin repo clone --id rh-repo --clone_id=rh-repo-clone -F

pulp-admin repo create --id brew-repo --name brew-repo --feed http://inecas.fedorapeople.org/fakerepos/brew-repo --relativepath=brew-repo
pulp-admin repo sync --id brew-repo -F
pulp-admin repo sync --id rh-repo-clone -F
  
Actual results:
error:  Error: `/var/lib/pulp//repos/rh-repo/PackageKit-gstreamer-plugin-0.5.8-19.el6.x86_64.rpm` and `/var/lib/pulp//packages/PackageKit-gstreamer-plugin/0.5.8/19.el6/x86_64/838/PackageKit-gstreamer-plugin-0.5.8-19.el6.x86_64.rpm` are the same file

link pointing to package from another repo

Expected results:
Links pointing to packages with right checksum
Comment 2 Pradeep Kilambi 2012-03-19 15:54:13 EDT
commit 8d788f4849369b1f116edb368384ec4f8267bf1

The fix also includes a migration script that needs to be run taking pulp server offline. See wiki page for more info

https://fedorahosted.org/pulp/wiki/PackagePathUpdate
Comment 3 Jeff Ortel 2012-03-20 14:47:52 EDT
build: 1.0.0-6
Comment 4 Preethi Thomas 2012-03-23 11:10:25 EDT
verified
[root@pulp-v1-server ~]# rpm -q pulp
pulp-1.0.0-6.el6.noarch
[root@pulp-v1-server ~]# 

[root@pulp-v1-server ~]# pulp-admin repo create --id rh-repo --name rh-repo --feed http://inecas.fedorapeople.org/fakerepos/rh-repo --relativepath=rh-repo
Successfully created repository [ rh-repo ]

[root@pulp-v1-server ~]# pulp-admin repo sync --id rh-repo -F
Sync for repository rh-repo started
Sync: Finished
0/1 new items downloaded
1/1 existing items processed

Item Details: 
RPMs: 1/1

[root@pulp-v1-server ~]# pulp-admin repo clone --id rh-repo --clone_id=rh-repo-clone -F
Repository [rh-repo] is being cloned as [rh-repo-clone]
Clone: Finished
Item Details: 
RPMs: 1/1

[root@pulp-v1-server ~]# pulp-admin repo create --id brew-repo --name brew-repo --feed http://inecas.fedorapeople.org/fakerepos/brew-repo --relativepath=brew-repo
Successfully created repository [ brew-repo ]

[root@pulp-v1-server ~]# pulp-admin repo sync --id brew-repo -F
Sync for repository brew-repo started
Sync: Finished
1/1 new items downloaded
0/1 existing items processed

Item Details: 
RPMs: 1/1

[root@pulp-v1-server ~]# pulp-admin repo sync --id rh-repo-clone -F
Sync for repository rh-repo-clone started
Sync: Finished
0/1 new items downloaded
1/1 existing items processed

Item Details: 
RPMs: 1/1

[root@pulp-v1-server ~]# pulp-admin repo sync --id rh-repo-clone -F
Sync for repository rh-repo-clone started
Sync: Finished
0/1 new items downloaded
1/1 existing items processed

Item Details: 
RPMs: 1/1


root@pulp-v1-server ~]# 

Also verified the package migrate script  and all the different suggested tests as per the wiki page

https://fedorahosted.org/pulp/wiki/PackagePathUpdate
Comment 5 Preethi Thomas 2012-05-25 10:15:35 EDT
Pulp v1.1 Release

Note You need to log in before you can comment on or make changes to this bug.