I applied moves just now and found that the old package remains in ${PKGDIR}/Packages following a slotmove with FEATURES=binpkg-multi-instance (this may be related to bug 571126). I have FEATURES=pkgdir-index-trusted enabled, which is helpful because it prevents emerge from performing automatic ${PKGDIR}/Packages reindexing which can easily destroy evidence of bugs related to the state of ${PKGDIR}/Packages. I have --package-moves=n in my EMERGE_DEFAULT_OPTS so that I can choose when to apply packages moves. I ran an emerge command with --package-moves=y and it applied this one slotmove: profiles/updates/4Q-2020:slotmove media-gfx/gimp 2 0 The emerge command completed successfully, producing output like this: > Performing Global Updates > (Could take a couple of minutes if you have a lot of binary packages.) > .='update pass' *='binary update' #='/var/db update' @='/var/db move' > s='/var/db SLOT move' %='binary move' S='binary SLOT move' > p='update /etc/portage/package.*' > > /var/db/repos/gentoo/profiles/updates/4Q-2020........ > /var/db/repos/gentoo/profiles/updates/1Q-2021. > sS Afterwards, emaint --check binhost reported this problem: > # emaint --check binhost > Emaint: check binhost 100% [============================================>] > > 'media-gfx/gimp-2.10.18-r2' is not in the repository The old entry for media-gfx/gimp/gimp-2.10.18-r2-1.xpak remains in ${PKGDIR}/Packages, and its content has not changed. There is a new correct entry for media-gfx/gimp/gimp-2.10.18-r2-2.xpak.
The bug has been referenced in the following commit(s): https://gitweb.gentoo.org/proj/portage.git/commit/?id=7007dbcd1013829466498d7e0708c8b84fdd68bf commit 7007dbcd1013829466498d7e0708c8b84fdd68bf Author: Zac Medico <zmedico@gentoo.org> AuthorDate: 2021-01-18 08:45:34 +0000 Commit: Zac Medico <zmedico@gentoo.org> CommitDate: 2021-01-18 08:46:44 +0000 bindbapi.aux_update: fix spurious package file renames Omit the filename argument for the binarytree.inject method in aux_update, since an in-place update is desired, and the filename argument causes the file to be renamed when binpkg-multi-instance is enabled. Fixes: 328dd4712f88 ("binpkg-multi-instance 3 of 7") Bug: https://bugs.gentoo.org/765847 Signed-off-by: Zac Medico <zmedico@gentoo.org> lib/portage/dbapi/bintree.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-)
The bug has been referenced in the following commit(s): https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=b03adb22f0432ee992aab733ce5dfa13e9b6801a commit b03adb22f0432ee992aab733ce5dfa13e9b6801a Author: Zac Medico <zmedico@gentoo.org> AuthorDate: 2021-01-19 11:07:56 +0000 Commit: Zac Medico <zmedico@gentoo.org> CommitDate: 2021-01-19 11:16:53 +0000 sys-apps/portage: Bump to version 3.0.14 #571126 KeyError during package moves "global updates" triggered by FEATURES=binpkg-multi-instance (same root cause as bug 765847) #739004 Add @changed-subslot package set #765847 Spurious package file renames during application of package moves with FEATURES=binpkg-multi-instance #766012 Copy on write when applying a package move to a binary package, so that the old version of a binary package will remain available until eclean-pkg deletes it Bug: https://bugs.gentoo.org/766117 Bug: https://bugs.gentoo.org/571126 Bug: https://bugs.gentoo.org/739004 Bug: https://bugs.gentoo.org/765847 Bug: https://bugs.gentoo.org/766012 Package-Manager: Portage-3.0.14, Repoman-3.0.2 Signed-off-by: Zac Medico <zmedico@gentoo.org> sys-apps/portage/Manifest | 1 + sys-apps/portage/portage-3.0.14.ebuild | 268 +++++++++++++++++++++++++++++++++ 2 files changed, 269 insertions(+)