Hi,
I have a serious problem with pisi at the moment. I have the main and contrib repos enabled and I went to do an upgrade. My system locked up hard in the middle. Unfortunately I was unable to determine the state pisi was in when it happened. Now pisi will not run, either in the GUI or on the command line.
As root, restarting the upgrade with the --debug switch yields the following errors:
nyssa ~ # pisi --debug upgrade
Updating repositories
DEBUG: RepoDB initialized in 0.000641107559204.
DEBUG: HistoryDB initialized in 0.00592994689941.
* Updating repository: pardus-2009
DEBUG: RepoDB initialized in 0.000591993331909.
pisi-index.xml.bz2.sha1sum (40.0 B)100% 0.00 --/- [--:--:--] [complete]
pardus-2009 repository information is up-to-date.
* Updating repository: contrib-pardus-2009
pisi-index.xml.bz2.sha1sum (40.0 B)100% 0.00 --/- [--:--:--] [complete]
contrib-pardus-2009 repository information is up-to-date.
DEBUG: PackageDB initialized in 4.14569997787.
DEBUG: SourceDB initialized in 1.60278701782.
DEBUG: ComponentDB initialized in 1.56503200531.
DEBUG: GroupDB initialized in 1.53487992287.
DEBUG: HistoryDB initialized in 0.00556588172913.
DEBUG: PackageDB initialized in 0.127249002457.
System Error. Program Terminated.
<type 'exceptions.MemoryError'>:
Please use 'pisi help' for general help.
Traceback:
File "/usr/bin/pisi", line 80, in <module>
cli.run_command()
File "/usr/lib/pardus/pisi/cli/pisicli.py", line 140, in run_command
self.command.run()
File "/usr/lib/pardus/pisi/cli/upgrade.py", line 115, in run
pisi.api.upgrade(packages, repository)
File "/usr/lib/pardus/pisi/api.py", line 72, in wrapper
ret = func(*__args,**__kw)
File "/usr/lib/pardus/pisi/api.py", line 383, in upgrade
return pisi.operations.upgrade.upgrade(packages, repo)
File "/usr/lib/pardus/pisi/operations/upgrade.py", line 98, in upgrade
replaces = packagedb.get_replaces()
File "/usr/lib/pardus/pisi/db/packagedb.py", line 205, in get_replaces
if pisi.replace.installed_package_replaced(r):
File "/usr/lib/pardus/pisi/replace.py", line 40, in installed_package_replaced
return pisi.relation.installed_package_satisfies(repinfo)
File "/usr/lib/pardus/pisi/relation.py", line 55, in installed_package_satisfies
if not installdb.has_package(pkg_name):
File "/usr/lib/pardus/pisi/db/installdb.py", line 102, in has_package
return self.installed_db.has_key(package)
File "/usr/lib/pardus/pisi/db/lazydb.py", line 96, in __getattr__
self.__init()
File "/usr/lib/pardus/pisi/db/lazydb.py", line 91, in __init
self.init()
File "/usr/lib/pardus/pisi/db/installdb.py", line 72, in init
self.rev_deps_db = self.__generate_revdeps()
File "/usr/lib/pardus/pisi/db/installdb.py", line 95, in __generate_revdeps
self.__add_to_revdeps(package, revdeps)
File "/usr/lib/pardus/pisi/db/installdb.py", line 85, in __add_to_revdeps
meta_doc = piksemel.parse(metadata_xml)
I did do a pisi clean before this as well as a pisi delete-cache. That didn't help.
I tried rebuilding the database with similar results:
nyssa ~ # pisi --debug rdb
Rebuild PiSi databases? (yes/no)yes
DEBUG: FilesDB initialized in 0.0531671047211.
No handlers could be found for logger "pisi"
System Error. Program Terminated.
<type 'exceptions.MemoryError'>:
Please use 'pisi help' for general help.
Traceback:
File "/usr/bin/pisi", line 80, in <module>
cli.run_command()
File "/usr/lib/pardus/pisi/cli/pisicli.py", line 140, in run_command
self.command.run()
File "/usr/lib/pardus/pisi/cli/rebuilddb.py", line 52, in run
pisi.api.rebuild_db(ctx.get_option('files'))
File "/usr/lib/pardus/pisi/api.py", line 72, in wrapper
ret = func(*__args,**__kw)
File "/usr/lib/pardus/pisi/api.py", line 777, in rebuild_db
rebuild_filesdb()
File "/usr/lib/pardus/pisi/api.py", line 755, in rebuild_filesdb
for pkg in list_installed():
File "/usr/lib/pardus/pisi/api.py", line 168, in list_installed
return pisi.db.installdb.InstallDB().list_installed()
File "/usr/lib/pardus/pisi/db/installdb.py", line 99, in list_installed
return self.installed_db.keys()
File "/usr/lib/pardus/pisi/db/lazydb.py", line 96, in __getattr__
self.__init()
File "/usr/lib/pardus/pisi/db/lazydb.py", line 91, in __init
self.init()
File "/usr/lib/pardus/pisi/db/installdb.py", line 72, in init
self.rev_deps_db = self.__generate_revdeps()
File "/usr/lib/pardus/pisi/db/installdb.py", line 95, in __generate_revdeps
self.__add_to_revdeps(package, revdeps)
File "/usr/lib/pardus/pisi/db/installdb.py", line 85, in __add_to_revdeps
meta_doc = piksemel.parse(metadata_xml)
nyssa ~ #
Obviously I need to get pisi working again and I need to finish the upgrades. Right now I'm open to any suggestions as to how to fix this.