Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 295232 - Emerge crash after upgrading to portage 2.1.7.9
Summary: Emerge crash after upgrading to portage 2.1.7.9
Status: RESOLVED FIXED
Alias: None
Product: Portage Development
Classification: Unclassified
Component: Core (show other bugs)
Hardware: x86 Linux
: High critical (vote)
Assignee: Portage team
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2009-11-30 18:18 UTC by Sergnut
Modified: 2009-12-01 19:06 UTC (History)
0 users

See Also:
Package list:
Runtime testing required: ---


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Sergnut 2009-11-30 18:18:18 UTC
After I have upgraded to portage 2.1.7.9 I have experienced some problems. For instance, after I do an emerge -puD world it crashes with the following traceback:

emerge -puD world

These are the packages that would be merged, in order:

Calculating dependencies... done!
Traceback (most recent call last):
  File "/usr/bin/emerge", line 42, in <module>
    retval = emerge_main()
  File "/usr/lib/portage/pym/_emerge/main.py", line 1378, in emerge_main
    myopts, myaction, myfiles, spinner)
  File "/usr/lib/portage/pym/_emerge/actions.py", line 276, in action_build
    settings, trees, myopts, myparams, myaction, myfiles, spinner)
  File "/usr/lib/portage/pym/_emerge/depgraph.py", line 5419, in backtrack_depgraph
    myaction, myfiles, spinner)
  File "/usr/lib/portage/pym/_emerge/depgraph.py", line 5437, in _backtrack_depgraph
    success, favorites = mydepgraph.select_files(myfiles)
  File "/usr/lib/portage/pym/_emerge/depgraph.py", line 1511, in select_files
    self._load_vdb()
  File "/usr/lib/portage/pym/_emerge/depgraph.py", line 277, in _load_vdb
    fake_vartree.sync()
  File "/usr/lib/portage/pym/_emerge/FakeVartree.py", line 102, in sync
    self._sync()
  File "/usr/lib/portage/pym/_emerge/FakeVartree.py", line 152, in _sync
    pkg = self._pkg(cpv)
  File "/usr/lib/portage/pym/_emerge/FakeVartree.py", line 169, in _pkg
    real_vardb.aux_get(cpv, self._db_keys)),
  File "/usr/lib/portage/pym/portage/dbapi/vartree.py", line 514, in aux_get
    pkg_data = self._aux_cache["packages"].get(mycpv)
  File "/usr/lib/portage/pym/portage/dbapi/vartree.py", line 420, in _aux_cache
    self._aux_cache_init()
  File "/usr/lib/portage/pym/portage/dbapi/vartree.py", line 442, in _aux_cache_init
    aux_cache = mypickle.load()
TypeError: unhashable type: 'dict'

When I do a emerge --sync, it reports another errors such as:

[...]

Parse Error reading PROVIDE and USE in '/var/db/pkg/dev-texlive/texlive-latex-2008-r1'
Exception: unhashable type: 'dict'


Parse Error reading PROVIDE and USE in '/var/db/pkg/dev-texlive/texlive-texinfo-2008'
Exception: unhashable type: 'dict'


Parse Error reading PROVIDE and USE in '/var/db/pkg/dev-texlive/texlive-genericrecommended-2008'
Exception: unhashable type: 'dict'

[...]

but the DB directories seems OK (the filesystem has not suffered any corruption).


Reproducible: Always

Steps to Reproduce:
1. Perform emerge -puD world

OR

2. Perform emerge --sync
Comment 1 Zac Medico gentoo-dev 2009-12-01 02:21:21 UTC
This should solve it:

  rm /var/cache/edb/vdb_metadata.pickle

It will regenerate automatically. I don't know how it got corrupted.
Comment 2 Sergnut 2009-12-01 19:06:53 UTC
After

    rm /var/cache/edb/vdb_metadata.pickle

the problem has been fixed.

Thank you very much!