rpm/mock: can't upbuild FC10 targets on FC9 host

Paul Howarth paul at city-fan.org
Thu Sep 3 09:13:40 UTC 2009


On 02/09/09 22:52, Philip Prindeville wrote:
> Seems to be an rpm versioning issue:
>
> [root at builder SRPMS]# mock -r fedora-10-x86_64 --rebuild perl-Net-Patricia-1.15_01-1.fc9.src.rpm
> INFO: mock.py version 0.9.14 starting...
> State Changed: init plugins
> State Changed: start
> INFO: Start(perl-Net-Patricia-1.15_01-1.fc9.src.rpm)  Config(fedora-10-x86_64)
> State Changed: lock buildroot
> State Changed: clean
> State Changed: init
> State Changed: lock buildroot
> Mock Version: 0.9.14
> INFO: Mock Version: 0.9.14
> INFO: enabled root cache
> State Changed: unpacking root cache
> INFO: enabled yum cache
> State Changed: cleaning yum metadata
> INFO: enabled ccache
> State Changed: running yum
> State Changed: setup
> ERROR: Exception(perl-Net-Patricia-1.15_01-1.fc9.src.rpm) Config(fedora-10-x86_64) 0 minutes 15 seconds
> INFO: Results and/or logs in: /var/lib/mock/fedora-10-x86_64/result
> ERROR: Command failed:
>   # /usr/bin/yum --installroot /var/lib/mock/fedora-10-x86_64/root/  resolvedep  ccache  'perl(ExtUtils::MakeMaker)'
> rpmdb: Program version 4.3 doesn't match environment version
> error: db4 error(-30974) from dbenv->open: DB_VERSION_MISMATCH: Database environment version mismatch
> error: cannot open Packages index using db3 -  (-30974)
> error: cannot open Packages database in /var/lib/mock/fedora-10-x86_64/root/var/lib/rpm
> Traceback (most recent call last):
>    File "/usr/bin/yum", line 29, in<module>
>      yummain.user_main(sys.argv[1:], exit_code=True)
>    File "/usr/share/yum-cli/yummain.py", line 229, in user_main
>      errcode = main(args)
>    File "/usr/share/yum-cli/yummain.py", line 84, in main
>      base.getOptionsConfig(args)
>    File "/usr/share/yum-cli/cli.py", line 184, in getOptionsConfig
>      enabled_plugins=self.optparser._splitArg(opts.enableplugins))
>    File "/usr/lib/python2.5/site-packages/yum/__init__.py", line 192, in _getConfig
>      self._conf = config.readMainConfig(startupconf)
>    File "/usr/lib/python2.5/site-packages/yum/config.py", line 774, in readMainConfig
>      yumvars['releasever'] = _getsysver(startupconf.installroot, startupconf.distroverpkg)
>    File "/usr/lib/python2.5/site-packages/yum/config.py", line 844, in _getsysver
>      idx = ts.dbMatch('provides', distroverpkg)
> TypeError: rpmdb open failed
>
> [root at builder SRPMS]#
>
>
>
> The host was originally an FC8 host, that was yum updated to FC9. I use
> it to build FC9 and FC10 packages via Mock.
>
> Unfortunately, it looks like it doesn't want to use the old RPM database
> from the previous FC8 install.
>
> How do I clobber all of this to that the database gets written afresh?
>
> Apparently, "mock -r fedora-10-x86_64 --clean" isn't adequate. Perhaps
> "mock --nuke" would be useful here following an version update to zap
> stale state?
>
> Or should I just uninstall and reinstall mock?

I'd try this first:

# rm -rf /var/lib/mock/fedora-10-x86_64/root

Paul.




More information about the devel mailing list