I have a very old system that is fairly out-of-date. I have been working slowly through updating it. I finally got it to a point where it would do a merge of some 3-400 packages. This emerge was taking quite some time, and I have emerge --sync set to run via cron. The sync removed an ebuild scheduled for merge. Reproducible: Always Steps to Reproduce: 1. emerge --update @world 2. emerge --sync 3. Get unlucky and have an ebuild removed via sync while emerge @world is running Actual Results: emerge dies reporting a missing ebuild Expected Results: emerge merges the ebuild because it cached it somewhere Maybe this is expected behavior, but it seems like Portage would be more robust if it could handle a stupid user deleting ebuilds from under it.
There are some tricks how to upgrade an old system. Please ask on IRC #gentoo or in the forum. We cannot help on a bug tracker.