I was upgrading a system from F28 ro F29 and the power failed during the upgrade. I don't know what point the upgrade was at when it failed. The basic problem is that most (but not all) dnf commands just die with a traceback:
[root@elric greg]# dnf clean all
Failed to set locale, defaulting to C
34 files removed
[root@elric greg]# dnf check-update
Failed to set locale, defaulting to C
Last metadata expiration check: 0:06:54 ago on Mon Nov 5 17:01:33 2018.
Traceback (most recent call last):
File "/usr/bin/dnf", line 58, in <module>
main.user_main(sys.argv[1:], exit_code=True)
File "/usr/lib/python3.7/site-packages/dnf/cli/main.py", line 179, in user_main
errcode = main(args)
File "/usr/lib/python3.7/site-packages/dnf/cli/main.py", line 64, in main
return _main(base, args, cli_class, option_parser_class)
File "/usr/lib/python3.7/site-packages/dnf/cli/main.py", line 99, in _main
return cli_run(cli, base)
File "/usr/lib/python3.7/site-packages/dnf/cli/main.py", line 115, in cli_run
cli.run()
File "/usr/lib/python3.7/site-packages/dnf/cli/cli.py", line 1055, in run
return self.command.run()
File "/usr/lib/python3.7/site-packages/dnf/cli/commands/__init__.py", line 283, in run
found = self.base.check_updates(self.opts.packages, print_=True)
File "/usr/lib/python3.7/site-packages/dnf/cli/cli.py", line 301, in check_updates
columns = _list_cmd_calc_columns(self.output, ypl)
File "/usr/lib/python3.7/site-packages/dnf/cli/cli.py", line 109, in _list_cmd_calc_columns
_add_pkg_simple_list_lens(data, opkg, indent=" " * 4)
File "/usr/lib/python3.7/site-packages/dnf/cli/cli.py", line 93, in _add_pkg_simple_list_lens
rid = len(pkg._from_repo)
File "/usr/lib/python3.7/site-packages/dnf/package.py", line 84, in _from_repo
pkgrepo = self.base.history.repo(self)
File "/usr/lib/python3.7/site-packages/dnf/db/history.py", line 362, in repo
return self.swdb.getRPMRepo(str(pkg))
File "/usr/lib/python3.7/site-packages/dnf/db/history.py", line 291, in swdb
self._swdb = libdnf.transaction.Swdb(self.dbpath)
File "/usr/lib64/python3.7/site-packages/libdnf/transaction.py", line 729, in __init__
this = _transaction.new_Swdb(*args)
RuntimeError: Exec failed: no such table: main.trans_cmdline
[root@elric greg]#
When I first brought it back up, there were a lot of dups (f28 and f29 packages both installed). I painstakingly (using rpm) removed all the dups, so that now "dnf check" runs with no output (other than the locale complaint). But commands like "update", "check-update", "install" will just get the traceback. The system seems to be running OK (although still with an F28 kernel), but of course it is now impossible to update it.
Is there a way to fix this? I'm thinking I could have had a working system by now by just installing F29 from scratch, but I'm also trying to learn here. Is a full install my only option at this point?
Thanks,
--Greg
_______________________________________________ users mailing list -- users@xxxxxxxxxxxxxxxxxxxxxxx To unsubscribe send an email to users-leave@xxxxxxxxxxxxxxxxxxxxxxx Fedora Code of Conduct: https://getfedora.org/code-of-conduct.html List Guidelines: https://fedoraproject.org/wiki/Mailing_list_guidelines List Archives: https://lists.fedoraproject.org/archives/list/users@xxxxxxxxxxxxxxxxxxxxxxx