Gentoo Forums
Gentoo Forums
Gentoo Forums
Quick Search: in
cache.cache_errors.CacheCorruption
View unanswered posts
View posts from last 24 hours

 
Reply to topic    Gentoo Forums Forum Index Duplicate Threads
View previous topic :: View next topic  
Author Message
literfizzer
n00b
n00b


Joined: 30 Aug 2006
Posts: 19

PostPosted: Wed Aug 30, 2006 5:09 pm    Post subject: cache.cache_errors.CacheCorruption Reply with quote

Got this nasty little surprise last night at the end of emerge --sync:

[...]
deleting x11-misc/adesklets/adesklets-0.5.0.ebuild
deleting x11-misc/adesklets/files/digest-adesklets-0.5.0

Number of files: 147520
Number of files transferred: 409
Total file size: 150579700 bytes
Total transferred file size: 1195599 bytes
Literal data: 1191999 bytes
Matched data: 0 bytes
File list size: 3378195
File list generation time: 10.324 seconds
File list transfer time: 0.000 seconds
Total bytes sent: 11821
Total bytes received: 4592605

sent 11821 bytes received 4592605 bytes 11944.04 bytes/sec
total size is 150579700 speedup is 32.70
Traceback (most recent call last):
File "/usr/bin/emerge", line 3070, in ?
mybestpv=portage.portdb.xmatch("bestmatch-visible","sys-apps/portage")
File "/usr/lib/portage/pym/portage.py", line 5373, in xmatch
myval=best(self.xmatch("match-visible",None,mydep=mydep,mykey=mykey))
File "/usr/lib/portage/pym/portage.py", line 5384, in xmatch
myval=match_from_list(mydep,self.xmatch("list-visible",None,mydep=mydep,mykey=mykey))
File "/usr/lib/portage/pym/portage.py", line 5370, in xmatch
myval=self.gvisible(self.visible(self.cp_list(mykey)))
File "/usr/lib/portage/pym/portage.py", line 5469, in gvisible
keys, eapi = self.aux_get(mycpv, ["KEYWORDS", "EAPI"])
File "/usr/lib/portage/pym/portage.py", line 5093, in aux_get
try: del self.auxdb[mylocation][mycpv]
File "/usr/lib/portage/pym/cache/template.py", line 81, in __delitem__
self._delitem(cpv)
File "/usr/lib/portage/pym/cache/metadata_overlay.py", line 52, in _delitem
value = self[cpv] # validates whiteout and/or raises a KeyError when necessary
File "/usr/lib/portage/pym/cache/metadata_overlay.py", line 29, in __getitem__
if self._is_whiteout(value):
File "/usr/lib/portage/pym/cache/metadata_overlay.py", line 77, in _is_whiteout
return value["EAPI"] == "whiteout"
File "/usr/lib/portage/pym/cache/mappings.py", line 32, in __getitem__
return self.orig[key]
File "/usr/lib/portage/pym/cache/mappings.py", line 77, in __getitem__
self.d.update(self.pull())
File "/usr/lib/portage/pym/cache/flat_hash.py", line 29, in callit
return args[0](*args[1:]+args2)
File "/usr/lib/portage/pym/cache/flat_hash.py", line 47, in _pull
raise cache_errors.CacheCorruption(cpv, e)
cache.cache_errors.CacheCorruption: sys-apps/portage-2.1.1_rc1-r1 is corrupt: dictionary update sequence element #0 has length 1; 2 is required

I have FEATURES="-metadata-transfer" in my /etc/make.conf per Portage upgrade instructions. I took it out and tried emerge --sync and got slightly different output:

>>> Updating Portage cache:
Traceback (most recent call last):
File "/usr/bin/emerge", line 3062, in ?
cache.util.mirror_cache(source, cm, pdb.auxdb[porttree_root], eclass_cache=ec, verbose_instance=noise_maker)
File "/usr/lib/portage/pym/cache/util.py", line 19, in mirror_cache
dead_nodes = dict.fromkeys(trg_cache.keys())
File "/usr/lib/portage/pym/cache/template.py", line 94, in keys
return tuple(self.iterkeys())
File "/usr/lib/portage/pym/cache/metadata_overlay.py", line 68, in iterkeys
if self.has_key(cpv): # validates whiteout when necessary
File "/usr/lib/portage/pym/cache/metadata_overlay.py", line 60, in has_key
self[cpv] # validates whiteout when necessary
File "/usr/lib/portage/pym/cache/metadata_overlay.py", line 29, in __getitem__
if self._is_whiteout(value):
File "/usr/lib/portage/pym/cache/metadata_overlay.py", line 77, in _is_whiteout
return value["EAPI"] == "whiteout"
File "/usr/lib/portage/pym/cache/mappings.py", line 32, in __getitem__
return self.orig[key]
File "/usr/lib/portage/pym/cache/mappings.py", line 77, in __getitem__
self.d.update(self.pull())
File "/usr/lib/portage/pym/cache/flat_hash.py", line 29, in callit
return args[0](*args[1:]+args2)
File "/usr/lib/portage/pym/cache/flat_hash.py", line 47, in _pull
raise cache_errors.CacheCorruption(cpv, e)
cache.cache_errors.CacheCorruption: x11-plugins/gaim-encryption-3.0_beta4-r1 is corrupt: dictionary update sequence element #0 has length 1; 2 is required

I've attempted to sync again this morning, with the same result. I'm guessing it's some kind of local cache corruption. How do I fix it?

$ emerge --info
Portage 2.1-r2 (default-linux/x86/2006.0, gcc-3.4.6, glibc-2.3.6-r4, 2.6.17-gentoo-r4 i686)
=================================================================
System uname: 2.6.17-gentoo-r4 i686 AMD Athlon(tm) XP rrsossor
Gentoo Base System version 1.12.4
app-admin/eselect-compiler: [Not Present]
dev-lang/python: 2.4.3-r1
dev-python/pycrypto: 2.0.1-r5
dev-util/ccache: [Not Present]
dev-util/confcache: [Not Present]
sys-apps/sandbox: 1.2.17
sys-devel/autoconf: 2.13, 2.59-r7
sys-devel/automake: 1.4_p6, 1.5, 1.6.3, 1.7.9-r1, 1.8.5-r3, 1.9.6-r2
sys-devel/binutils: 2.16.1-r3
sys-devel/gcc-config: 1.3.13-r3
sys-devel/libtool: 1.5.22
virtual/os-headers: 2.6.11-r2
ACCEPT_KEYWORDS="x86"
AUTOCLEAN="yes"
CBUILD="i686-pc-linux-gnu"
CFLAGS="-pipe -O3 -march=athlon-xp -mfpmath=sse -msse -mmmx -m3dnow -ffast-math -funroll-loops -fomit-frame-pointer"
CHOST="i686-pc-linux-gnu"
CONFIG_PROTECT="/etc /usr/kde/3.5/env /usr/kde/3.5/share/config /usr/kde/3.5/shutdown /usr/share/X11/xkb /usr/share/config /usr/share/texmf/dvipdfm/config/ /usr/share/texmf/dvips/config/ /usr/share/texmf/tex/generic/config/ /usr/share/texmf/tex/platex/config/ /usr/share/texmf/xdvi/"
CONFIG_PROTECT_MASK="/etc/env.d /etc/gconf /etc/revdep-rebuild /etc/splash /etc/terminfo"
CXXFLAGS="-pipe -O3 -march=athlon-xp -mfpmath=sse -msse -mmmx -m3dnow -ffast-math -funroll-loops -fomit-frame-pointer"
DISTDIR="/usr/portage/distfiles"
FEATURES="autoconfig distlocks sandbox sfperms strict"
GENTOO_MIRRORS="http://ftp.ucsb.edu/pub/mirrors/linux/gentoo/"
MAKEOPTS="-j2"
PKGDIR="/usr/portage/packages"
PORTAGE_RSYNC_OPTS="--recursive --links --safe-links --perms --times --compress --force --whole-file --delete --delete-after --stats --timeout=180 --exclude='/distfiles' --exclude='/local' --exclude='/packages'"
PORTAGE_TMPDIR="/var/tmp"
PORTDIR="/usr/portage"
PORTDIR_OVERLAY="/usr/local/portage"
SYNC="rsync://rsync.gentoo.org/gentoo-portage"
USE="x86 3dnow 3dnowext X alsa apm avi berkdb bindist bitmap-fonts boundschecking browserplugin cairo caps cli crypt cups dlloader dri emboss encode foomaticdb gif gstreamer gtk gtk2 imlib isdnlog jpeg kde libg++ libwww lirc mad mikmod mmx mmxext motif mozilla mp3 mpeg mythtv ncurses nptl nsplugin nvidia ogg ooo-kde opengl pam pcre pda pdflib png ppds pppd qt3 qt4 quicktime readline reflection rtc sdl session spell spl sse sse2 ssl tcpd truetype truetype-fonts type1-fonts udev vorbis win32codecs xml xmms xorg xv zlib elibc_glibc input_devices_keyboard input_devices_mouse kernel_linux lirc_devices_hauppauge userland_GNU video_cards_nvidia"
Unset: CTARGET, EMERGE_DEFAULT_OPTS, INSTALL_MASK, LANG, LC_ALL, LDFLAGS, LINGUAS, PORTAGE_RSYNC_EXTRA_OPTS
Back to top
View user's profile Send private message
literfizzer
n00b
n00b


Joined: 30 Aug 2006
Posts: 19

PostPosted: Wed Aug 30, 2006 5:38 pm    Post subject: Reply with quote

I also just tried `emerge --regen`, which appeared to succeed, though it spewed many errors like this:

error processing x11-wm/metacity-2.12.3, continuing... (x11-wm/metacity-2.12.3 is corrupt: dictionary update sequence element #0 has length 1; 2 is required)

Same result when I try to actually emerge --update world though. Cache still b0rken. Help please! :(
Back to top
View user's profile Send private message
literfizzer
n00b
n00b


Joined: 30 Aug 2006
Posts: 19

PostPosted: Wed Aug 30, 2006 5:46 pm    Post subject: rm /var/cache/edb/dep fixed it Reply with quote

I did an `strace emerge --pretend --update world` and found that the corrupt files were under /var/cache/edb/dep, so I mv'ed that dir to dep.corrupt. emerge --update now works fine. Any other fallout I should be aware of?
Back to top
View user's profile Send private message
Duncan Mac Leod
Apprentice
Apprentice


Joined: 02 May 2004
Posts: 163
Location: Coburg, Bavaria, Germany

PostPosted: Tue Nov 21, 2006 2:56 pm    Post subject: Re: rm /var/cache/edb/dep fixed it Reply with quote

literfizzer wrote:
I did an `strace emerge --pretend --update world` and found that the corrupt files were under /var/cache/edb/dep, so I mv'ed that dir to dep.corrupt. emerge --update now works fine. Any other fallout I should be aware of?


Deleting the mentioned Directory saved my life - THANK YOU!
Back to top
View user's profile Send private message
synt4x
n00b
n00b


Joined: 20 Jun 2005
Posts: 46

PostPosted: Wed Nov 22, 2006 3:26 pm    Post subject: Reply with quote

All of my gentoo boxes randomly started doing this on different packages today. Killing off that "/var/cache/edb/dep/" sure saved me too :)
Back to top
View user's profile Send private message
frostschutz
Advocate
Advocate


Joined: 22 Feb 2005
Posts: 2424
Location: Germany

PostPosted: Wed Nov 22, 2006 3:50 pm    Post subject: Reply with quote

Hmmm, it didn't do anything for me... resyncing and updating portage cache took ages and ended up with the same error.
What is really wrong here?

EDIT: not just removing /var/cache/edb/dep, but the whole /var/cache/edb directory did the trick
Back to top
View user's profile Send private message
Anf
n00b
n00b


Joined: 22 Mar 2006
Posts: 7

PostPosted: Tue Nov 28, 2006 1:13 pm    Post subject: Reply with quote

All machines that I don't synced more than a 6 months had the same problem today. In all cases deleting "/var/cache/edb/dep/" directory helped. Many thanks.
Back to top
View user's profile Send private message
frostschutz
Advocate
Advocate


Joined: 22 Feb 2005
Posts: 2424
Location: Germany

PostPosted: Tue Nov 28, 2006 4:20 pm    Post subject: Reply with quote

The problem reappeared today for me as well - I wonder what is going on...
Back to top
View user's profile Send private message
gringo
Advocate
Advocate


Joined: 27 Apr 2003
Posts: 3706

PostPosted: Tue Nov 28, 2006 4:37 pm    Post subject: Reply with quote

i´m not 100% sure but it looks like a simliar problem i had once : does removing /usr/portage/metadata/cache + running emerge --sync later fix your problem ?

Oh, and don´t delete the the hole edb directory, that will fsck up things badly ( at least here it did) !

cheers
_________________
Error: Failing not supported by current locale
Back to top
View user's profile Send private message
kallamej
Administrator
Administrator


Joined: 27 Jun 2003
Posts: 4830
Location: Gothenburg, Sweden

PostPosted: Sat Feb 10, 2007 11:26 am    Post subject: Reply with quote

Moved from Portage & Programming to Duplicate Threads in favour of topic 466613.
_________________
Please read our FAQ Forum, it answers many of your questions.
irc: #gentoo-forums on irc.freenode.net
Back to top
View user's profile Send private message
Display posts from previous:   
Reply to topic    Gentoo Forums Forum Index Duplicate Threads All times are GMT
Page 1 of 1

 
Jump to:  
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum