portage 2.2 rc41 seems to have trouble resuming for me, as it dies for bad poppler dependencies.
I was updating from rc40 as part of a world update, so portage was the first package to be emerged, and when emerge restarted after that update, it died complaining about lots of stuff involving poppler. Don't have the exact error messages any more.
Then I restarted my world update, got no complaint, until one package failed to emerge. After that, portage restarted because I had used --keep-going, but it again exited complaining about poppler. The error message read thus:
*** Resuming merge...
Calculating dependencies... done!
* One or more packages are either masked or have missing dependencies:
* ~dev-libs/poppler-0.10.7[abiword] pulled in by:
* ('installed', '/', 'app-text/poppler-utils-0.10.7', 'nomerge')
* ~dev-libs/poppler-glib-0.10.7[cairo] pulled in by:
* ('installed', '/', 'virtual/poppler-glib-0.10.7', 'nomerge')
* ~dev-libs/poppler-0.10.7 pulled in by:
* ('installed', '/', 'virtual/poppler-0.10.7', 'nomerge')
* The resume list contains packages that are either masked or have
* unsatisfied dependencies. Please restart/continue the operation
* manually, or use --skipfirst to skip the first package in the list and
* any other packages that may be masked or have missing dependencies.
* The following package has failed to build or install:
The executed command was: "emerge -uaND --keep-going --debug @system @world"
"emerge --version" says: Portage 2.2_rc41 (default/linux/x86/2008.0/desktop, gcc-4.3.4, glibc-2.10.1-r0, 2.6.30-gentoo-r5 i686)
Created attachment 204918 [details]
I reproduced the command above adding --debug to the command line, and redirecting stdout and stderr to a log file, which I'm attaching here.
The plain text is 13M in length, so I compressed it using lzma.
I recently upgraded from ~x86 to ~amd64 and did a completely fresh emerge of all world packages and deps for this, some 2000 packages or so. I had hoped to kick off emerge one evening and find a mostly running system the next morning, with maybe a few failed builds requiring some tweaking afterwards to make them compile as well. In reality I had to manually mask the offending package and restart emerge after every single failure, due to a variation of this bug here, only with some x driver instead of poppler. As I was more concerned with getting my system back in some usable state, I didn't copy the message, and it seems it wasn't logged either. This was sys-apps/portage-2.2_rc55.
This is happening to me as well with portage 2.1. I think it has to do with blockers that are worked around with a fresh emerge, but are not worked around with --resume. Probably --resume is recalculating the deps but is not doing the 'work arounds' that a fresh emerge does for slotted packages.
This bug is old, has anyone ever looked at it? It seems that --resume isn't merely resuming but starting over, and not with the same methods that a fresh emerge uses.
When I do an emerge -pv --resume, I get an "invalid resume list":
Calculating dependencies... done!
* Invalid resume list:
* ('ebuild', u'/', u'sys-devel/gcc-4.4.5', 'merge')
* ('ebuild', u'/', u'kde-base/libkdegames-4.6.1', 'merge')
* ('ebuild', u'/', u'kde-base/kapman-4.6.1', 'merge')
The list doesn't contain any 'uninstalls'. Since I'm updating KDE that means the entire list has a needed uninstall, one per:
[ebuild NS ] kde-base/libkdegames-4.6.1 [4.5.4] USE="(-aqua) -debug (-kdeenablefinal) (-kdeprefix)" 0 kB
[uninstall ] kde-base/libkdegames-4.5.4 USE="(-aqua) -debug (-kdeenablefinal) (-kdeprefix)"
[blocks b ] kde-base/libkdegames:4.5[-kdeprefix] ("kde-base/libkdegames:4.5[-kdeprefix]" is blocking kde-base/libkdegames-4.6.1)
[blocks b ] kde-base/libkdegames:4.6[-kdeprefix] ("kde-base/libkdegames:4.6[-kdeprefix]" is blocking kde-base/libkdegames-4.5.4)
Portage 220.127.116.11 (default/linux/amd64/10.0/desktop, gcc-4.3.4, glibc-2.11.2-r3, 2.6.32-gentoo-r7 x86_64)
System uname: Linux-2.6.32-gentoo-r7-x86_64-AMD_Phenom-tm-_II_X4_965_Processor-with-gentoo-1.12.14
Timestamp of tree: Sun, 06 Mar 2011 20:00:01 +0000
dev-java/java-config: 1.3.7-r1, 2.1.11-r3
dev-lang/python: 2.4.6, 2.5.4-r3, 2.6.6-r2, 3.1.3-r1
sys-devel/autoconf: 2.13, 2.65-r1
sys-devel/automake: 1.7.9-r2, 1.8.5-r4, 1.9.6-r3, 1.10.3, 1.11.1
sys-devel/gcc: 4.1.2, 4.3.4, 4.4.3-r2
virtual/os-headers: 18.104.22.168 (sys-kernel/linux-headers)
CFLAGS="-O2 -march=k8 -pipe"
CONFIG_PROTECT="/etc /usr/share/config /usr/share/gnupg/qualified.txt"
CONFIG_PROTECT_MASK="/etc/ca-certificates.conf /etc/env.d /etc/env.d/java/ /etc/eselect/postgresql /etc/fonts/fonts.conf /etc/gconf /etc/php/apache2-php5/ext-active/ /etc/php/cgi-php5/ext-active/ /etc/php/cli-php5/ext-active/ /etc/revdep-rebuild /etc/sandbox.d /etc/terminfo /etc/texmf/language.dat.d /etc/texmf/language.def.d /etc/texmf/updmap.d /etc/texmf/web2c"
CXXFLAGS="-O2 -march=k8 -pipe"
FEATURES="assume-digests binpkg-logs distlocks fixlafiles fixpackages news parallel-fetch protect-owned sandbox sfperms strict unknown-features-warn unmerge-logs unmerge-orphans userfetch"
GENTOO_MIRRORS="http://gentoo.osuosl.org/ ftp://distro.ibiblio.org/pub/linux/distributions/gentoo/ ftp://ftp.gtlib.gatech.edu/pub/gentoo ftp://ftp.ucsb.edu/pub/mirrors/linux/gentoo/ http://mirrors.cs.wmich.edu/gentoo "
PORTAGE_RSYNC_OPTS="--recursive --links --safe-links --perms --times --compress --force --whole-file --delete --stats --timeout=180 --exclude=/distfiles --exclude=/local --exclude=/packages"
USE="3dnow X a52 aac aalib acl acpi alsa amd64 berkdb branding bzip2 cairo cdr cli consolekit cracklib crypt cups cxx dbus dri dts dvd dvdr emboss encode exif fam firefox flac fontconfig fortran gdbm gdu gif gphoto2 gpm gtk hal iconv imlib ipv6 java jpeg kde kdrive kerberos lcms ldap lensfun libcaca libnotify lirc lzma mad mikmod mmx mmxext mng modules mp3 mp3rtp mp4 mpeg mudflap multilib mysql ncurses network-cron nls nptl nptlonly ogg opengl openmp pam pango pcre pdf perl png policykit postgres ppds pppd python qt3support qt4 readline ruby samba sasl sdl session sndfile socks5 speex spell sqlite sqlite3 sse sse2 ssl startup-notification svg sysfs tcl tcpd threads tiff tk truetype udev unicode usb v4l2 vdpau vorbis x264 xcb xcomposite xinerama xml xorg xpm xprint xulrunner xv xvid zlib" ALSA_CARDS="ali5451 als4000 atiixp atiixp-modem bt87x ca0106 cmipci emu10k1x ens1370 ens1371 es1938 es1968 fm801 hda-intel intel8x0 intel8x0m maestro3 trident usb-audio via82xx via82xx-modem ymfpci" ALSA_PCM_PLUGINS="adpcm alaw asym copy dmix dshare dsnoop empty extplug file hooks iec958 ioplug ladspa lfloat linear meter mmap_emul mulaw multi null plug rate route share shm softvol" APACHE2_MODULES="actions alias auth_basic authn_alias authn_anon authn_dbm authn_default authn_file authz_dbm authz_default authz_groupfile authz_host authz_owner authz_user autoindex cache cgi cgid dav dav_fs dav_lock deflate dir disk_cache env expires ext_filter file_cache filter headers include info log_config logio mem_cache mime mime_magic negotiation rewrite setenvif speling status unique_id userdir usertrack vhost_alias" CAMERAS="ptp2" COLLECTD_PLUGINS="df interface irq load memory rrdtool swap syslog" ELIBC="glibc" GPSD_PROTOCOLS="ashtech aivdm earthmate evermore fv18 garmin garmintxt gpsclock itrax mtk3301 nmea ntrip navcom oceanserver oldstyle oncore rtcm104v2 rtcm104v3 sirf superstar2 timing tsip tripmate tnt ubx" INPUT_DEVICES="keyboard mouse evdev" KERNEL="linux" LCD_DEVICES="bayrad cfontz cfontz633 glk hd44780 lb216 lcdm001 mtxorb ncurses text" LINGUAS="en" PHP_TARGETS="php5-3" RUBY_TARGETS="ruby18" USERLAND="GNU" VIDEO_CARDS="nvidia" XTABLES_ADDONS="quota2 psd pknock lscan length2 ipv4options ipset ipp2p iface geoip fuzzy condition tee tarpit sysrq steal rawnat logmark ipmark dhcpmac delude chaos account"
Unset: CPPFLAGS, CTARGET, EMERGE_DEFAULT_OPTS, FFLAGS, INSTALL_MASK, PORTAGE_BUNZIP2_COMMAND, PORTAGE_COMPRESS, PORTAGE_COMPRESS_FLAGS, PORTAGE_RSYNC_EXTRA_OPTS
(In reply to comment #3)
> This is happening to me as well with portage 2.1. I think it has to do with
> blockers that are worked around with a fresh emerge, but are not worked around
> with --resume. Probably --resume is recalculating the deps but is not doing
> the 'work arounds' that a fresh emerge does for slotted packages.
> This bug is old, has anyone ever looked at it? It seems that --resume isn't
> merely resuming but starting over, and not with the same methods that a fresh
> emerge uses.
The way that it works is to take the saved merge list and try to calculate a dependency graph required to complete that list. This puts it in somewhat of a bind since it's not allowed to pull in any packages that aren't in the saved merge list, and the resulting dependency graph is not always valid. However, it could be made more robust if it would prune off unsolvable parts of the graph and just do the solvable parts (as suggested in bug 328343).
> When I do an emerge -pv --resume, I get an "invalid resume list":
> Calculating dependencies... done!
> * Invalid resume list:
> * ('ebuild', u'/', u'sys-devel/gcc-4.4.5', 'merge')
> * ('ebuild', u'/', u'kde-base/libkdegames-4.6.1', 'merge')
> * ('ebuild', u'/', u'kde-base/kapman-4.6.1', 'merge')
It seems that you've omitted the tail of the error message, which would have given more info about your specific case.
> The list doesn't contain any 'uninstalls'. Since I'm updating KDE that means
> the entire list has a needed uninstall, one per:
The raw resume list shown above isn't supposed to contain uninstalls since those are scheduled as necessary to solve blockers when the dependency graph is calculated. However, in this case creation of the dependency graph failed, so it never reached the point where it would schedule the uninstalls. Again, you seem to have omitted the the tail of the error message which would have given more information about why creation of the dependency graph failed.
*** Bug 477260 has been marked as a duplicate of this bug. ***
Created attachment 701253 [details]
emerge --keep-going log for failure due to unsatisfied dependency of installed package
The _resume_depgraph "nomerge" case causes --keep-going to abort here, because it can't drop a "nomerge" task:
> # Exclude installed packages that have been removed from the graph due
> # to failure to build/install runtime dependencies after the dependent
> # package has already been installed.
> dropped_tasks.update((pkg, atoms) for pkg, atoms in \
> unsatisfied_parents.items() if pkg.operation != "nomerge")
* One or more packages are either masked or have missing dependencies:
* dev-util/glade:3.10/12= pulled in by:
* (gui-libs/libhandy-0.0.13:0.0/0::gentoo, installed)