Bug 1392855
Summary: | build-locale-archive: build-locale-archive.c:301: fill_archive: Assertion `used < head->namehash_used' failed. | ||
---|---|---|---|
Product: | Red Hat Enterprise Linux 7 | Reporter: | Mark Chappell <mchappel> |
Component: | glibc | Assignee: | glibc team <glibc-bugzilla> |
Status: | CLOSED NOTABUG | QA Contact: | qe-baseos-tools-bugs |
Severity: | medium | Docs Contact: | |
Priority: | medium | ||
Version: | 7.3 | CC: | ashankar, codonell, cww, fweimer, mnewsome, mruzicka, pasteur, pfrankli, zpytela |
Target Milestone: | rc | ||
Target Release: | --- | ||
Hardware: | Unspecified | ||
OS: | Unspecified | ||
Whiteboard: | |||
Fixed In Version: | Doc Type: | If docs needed, set a value | |
Doc Text: | Story Points: | --- | |
Clone Of: | Environment: | ||
Last Closed: | 2017-07-28 11:00:23 UTC | Type: | Bug |
Regression: | --- | Mount Type: | --- |
Documentation: | --- | CRM: | |
Verified Versions: | Category: | --- | |
oVirt Team: | --- | RHEL 7.3 requirements from Atomic Host: | |
Cloudforms Team: | --- | Target Upstream Version: | |
Embargoed: | |||
Bug Depends On: | |||
Bug Blocks: | 1420851, 1473718 |
Description
Mark Chappell
2016-11-08 11:20:03 UTC
This seems to reproduce outside of the image as well: # cp /usr/lib/locale/locale-archive /usr/lib/locale/locale-archive.tmpl cp: overwrite ‘/usr/lib/locale/locale-archive.tmpl’? y # /usr/sbin/build-locale-archive --install-langs en_US:en # cp /usr/lib/locale/locale-archive /usr/lib/locale/locale-archive.tmpl cp: overwrite ‘/usr/lib/locale/locale-archive.tmpl’? y # /usr/sbin/build-locale-archive --install-langs en_US:en build-locale-archive: build-locale-archive.c:301: fill_archive: Assertion `used < head->namehash_used' failed. Aborted Based on that, the cause is that it's not possible to feed a stripped archive back into build-locale-archive. This is mostly a documentation issue with the container images. In order to broaden the set of installed locales, you need to reinstall glibc-common *after* removing the file /etc/rpm/macros.image-language-conf and removing the override_install_langs=en_US line from /etc/yum.conf. Otherwise, reinstalling glibc-common will just redo the locale stripping, and the desired locales will never be there after installation (even if we fixed this assertion failure, they are just gone from the file system, which is the entire point of locale stripping). So to recap, this should get you going: rm -f /etc/rpm/macros.image-language-conf sed -i '/^override_install_langs=/d' /etc/yum.conf yum reinstall glibc-common After that, you'll have a full complement of locales. Further steps are needed only if you want to reduce image size. |