vaeth/squashmount

emerge --sync error after resquashing

kanyck opened this issue ยท 4 comments

After resquashing/reboot emerge --sync fails as follows

>>> Syncing repository 'gentoo' into '/usr/portage'...
/usr/bin/git fetch origin --depth 1
remote: Enumerating objects: 75, done.
remote: Counting objects: 100% (75/75), done.
remote: Compressing objects: 100% (11/11), done.
remote: Total 38 (delta 28), reused 35 (delta 26), pack-reused 0
Unpacking objects: 100% (38/38), done.
From https://github.com/gentoo-mirror/gentoo
 + c56fe5d7ea...06d66bb5d5 stable     -> origin/stable  (forced update)
error: Entry 'dev-python/nagiosplugin/Manifest' not uptodate. Cannot merge.
fatal: Could not reset index file to revision 'refs/remotes/origin/stable'.
!!! git merge error in /usr/portage

Action: sync for repo: gentoo, returned code = 128

/ is mounted with lazytime option

vaeth commented

I will leave this open, since it is already sort of FAQ.

Git relies for speedup on inode numbers which are not preserved by overlay. These need to be recalculated to work reliably. Portage needs to be patched to force this recalculation:
https://github.com/vaeth/portage-env-mv/blob/master/env/patches/portage-update-index.patch
The following patch also may make syncing more reliably:
https://github.com/vaeth/portage-env-mv/blob/master/env/patches/portage-reset-hard.patch

Please do not bug the portage maintainers about the patches: They know about them but refused them, since it slightly increases the sync time, and they consider squashfs users a corner case.

Oh! Thanks! Maybe you should mention this in your setup docs.

Hi!
I am using this patch (and portage-update-index.patch) but those patches are failing with portage-3.0.24 (seems there is some rewrite at the zone where the patch should be appiled).

Do you already have a new version of the patches? If not, I will take some time to adapt them for portage-3.0.24.

Kind regards,
Xavier Miller

vaeth commented

Patches are updated now.