No problems in general use, and the comps file got uncompressed.

>              # 2. Download a .xml.gz and convert to .xml.gz.sqlite
>              base.repos.populateSack(mdtype='all', cacheonly=1)
>  
> +            # These are covered by the popSack above.
> +            main_MD_types = set(['primary', 'primary_db',
> +                                 'filelists', 'filelists_db',
> +                                 'other', 'other_db'])
> +            for repo in base.repos.listEnabled():
> +                    ...
> +                    repo.retrieveMD(MD)

The extra download step seems unnecessary.  I've noticed we already
download group_gz, updateinfo and prestodelta.  That's because 
when repo.mdpolicy == "group:all", doSetup() downloads all 
repo.retrieved.keys().

yum/yumRepo.py:
        self.retrieved = { 'primary':0, 'filelists':0, 'other':0, 'group':0,
                           'updateinfo':0, 'prestodelta' : 0}

I'd just add "pkgtags" here to download it too.

> +            # Now decompress stuff, double sigh.
> +            fname_map = {'group_gz'   : 'groups.xml',
> +                         'pkgtags'    : 'pkgtags.sqlite',
> +                         'updateinfo' : 'updateinfo.xml',
> +                         }
> +            for repo in base.repos.listEnabled():
> +                for MD in repo.repoXML.fileTypes():
> +                    if MD not in fname_map:
> +                        continue
> +                    misc.repo_gen_decompress(repo.retrieveMD(MD),
> +                                             fname_map[MD],
> +                                             cached=repo.cache)

ACK, can't think of a better way to handle this.
_______________________________________________
Yum-devel mailing list
[email protected]
http://lists.baseurl.org/mailman/listinfo/yum-devel

Reply via email to