Bug 491523

Summary: yum tries to remove rpms under repositories on local disk
Product: [Fedora] Fedora Reporter: Mamoru TASAKA <mtasaka>
Component: yumAssignee: Seth Vidal <skvidal>
Status: CLOSED UPSTREAM QA Contact: Fedora Extras Quality Assurance <extras-qa>
Severity: high Docs Contact:
Priority: medium    
Version: rawhideCC: ffesti, james.antill, nicolas.mailhot, pmatilai, tim.lauridsen
Target Milestone: ---   
Target Release: ---   
Hardware: All   
OS: Linux   
Whiteboard:
Fixed In Version: Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2009-03-23 15:23:56 UTC Type: ---
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:
Attachments:
Description Flags
yum transaction log none

Description Mamoru TASAKA 2009-03-22 15:47:38 UTC
Created attachment 336201 [details]
yum transaction log

Description of problem:
Well, when I try the following:

1. create /var/lib/mock/LOCALRPMS/i386 directory
2. put 2 binary rpms (actually modified boost, boost-devel
   i586 binary rpms) under the directory written in 1.
3. go to /var/lib/mock/LOCALRPMS, then
   $ createrepo -d $(pwd)
4. as root, cd /var/lib/mock/LOCALRPMS and
   $ find . -type f | xargs chattr +i
5. as root create /etc/yum.repos.d/LOCAL.repo, with
   the content as below:
------------------------------------------------------
[LOCAL]
name=LOCAL - locally created rpms
baseurl=file:///var/lib/mock/LOCALRPMS/i386/
enabled=1
gpgcheck=0
------------------------------------------------------
6. Then try "yum -y upgrade boost"

Then yum transaction tries to remove 2 binary rpms under
/var/lib/mock/LOCALRPMS/i386 directory (see attached)

Version-Release number of selected component (if applicable):
yum-3.2.21-16.fc11.noarch
createrepo-0.9.6-12.fc11.noarch

How reproducible:
100%

Steps to Reproduce:
1. See above
2.
3.

Additional info:
I don't know when this issue began...

Some debugging shows:
- At verifyPkg(self, fo, po, raiseError) in __init__.py,
  po.verifyLocalPkg() returns false

  <- At verifyLocalPkg(self) in packages.py,
     self.localPkg() returns "//var/cache/yum/LOCAL/packages/boost-1.37.0-4.1.fc11.i586.rpm", which does not exist at this time.
     and filesum = misc.checksum(csum_type, self.localPkg())
     returns Errors.MiscError

Comment 1 seth vidal 2009-03-23 15:23:56 UTC
I've changed yum so that file:// urls will still make a local copy of pkgs. This means we'll make a temp copy of things but it is safer than guessing the kind of baseurl we _might_ be dealing with.

Comment 2 James Antill 2009-03-24 03:24:40 UTC
*** Bug 491764 has been marked as a duplicate of this bug. ***