This really reduces the usefulness, and turns a possibly nice feature into an annoyance.
I have heard different things about this problems:
- The PackageKit side claims that yum makes it impossible to not download those file lists
- The yum side says it would be easy to do, just ask for help
This bug is an attempt to come to the bottom of this.
I'm sure using rawhide would not be an ideal testing ground, given that there's so much package churn. Never-the-less, we should try to fix things here.
The key problem is that c-n-f does a SearchFile(~installed) for the missing file. This means updating file lists, as the file lists are not normally downloaded when we do normal operations like getting the updates, updating and installing new software.
Once a week PackageKit will try to download the file lists when the user session goes idle, but if the file lists are out of date, yum insists on downloading them, unless we mark the system as offline.
I guess we could set the permitted age of the cache file, so we only get the file lists when we really need them (missing) rather than just a bit out of date. At the moment we do:
repo.metadata_expire = 60 * 60 * 1.5 # 1.5 hours, the default
repo.mdpolicy = "group:primary"
if we're strict, and:
repo.metadata_expire = 60 * 60 * 24 # 24 hours
repo.mdpolicy = "group:all"
If we're lazy. James had ideas about what PackageKit was doing wrong here.
So I took a look at what was actually causing the filelists to be downloaded.
b/c group:primary should do the right thing.
There was an, apparently old, bug in searchFiles() in sqlitesack that was never doing the simple check to see if the name being searched for was in the primarydb files.
this patch fixes that problem and makes the ultra-common and ultra-simple case of no globs and file in *bin/*, /etc/* match w/o every getting the filelists downloaded.
So, should this be moved to yum then ?
(In reply to comment #3)
> So, should this be moved to yum then ?
Yup, reassigning. We can use this bug to track when a fixed yum hits rawhide.
yum 3.2.23-15.fc12 has this fix.
It's in koji now - will be in rawhide shortly.