Bug 2033020
| Summary: | glibc: Reconsider "dns [!UNAVAIL=return] files" default for hosts database | ||
|---|---|---|---|
| Product: | [Fedora] Fedora | Reporter: | Martin Pitt <mpitt> |
| Component: | glibc | Assignee: | Carlos O'Donell <codonell> |
| Status: | CLOSED ERRATA | QA Contact: | Fedora Extras Quality Assurance <extras-qa> |
| Severity: | urgent | Docs Contact: | |
| Priority: | unspecified | ||
| Version: | rawhide | CC: | aoliva, arjun, codonell, dj, fweimer, law, mcermak, mfabian, mhofmann, mvadkert, pfrankli, redhat-bugzilla, rth, sipoyare |
| Target Milestone: | --- | Keywords: | Regression |
| Target Release: | --- | ||
| Hardware: | Unspecified | ||
| OS: | Unspecified | ||
| Whiteboard: | |||
| Fixed In Version: | glibc-2.34.9000-33.fc36 glibc-2.34-17.fc35 | Doc Type: | If docs needed, set a value |
| Doc Text: | Story Points: | --- | |
| Clone Of: | Environment: | ||
| Last Closed: | 2022-02-08 14:21:56 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: | |||
|
Description
Martin Pitt
2021-12-15 17:49:36 UTC
See https://github.com/cockpit-project/starter-kit/pull/520 for my initial notes and investigations. Adding Miroslav to CC, as he was debugging that with me. dns is searched first and provides an answer for "localhost" (NXDOMAIN). We never look at the files database as a result, so the contents of /etc/hosts is ignored. This needs a bit of upstream discussion. How urgent is it to fix this? Thanks. It seems to me that the dependencies are not set up correctly -- the new glibc does not require the new pam-1.5.2-8.fc36, thus authselect is never installed. So adding a "Requires: pam >= 1.5.2-8", or an inverse Conflicts: (does rpm have that?) should fix this? I wouldn't make this bug about the builtin defaults -- this is about a broken upgrade path for properly transitioning the ownership of nsswitch.conf. Just removing nsswitch would also break libnss_systemd, sssd, and other configs. (In reply to Martin Pitt from comment #4) > I wouldn't make this bug about the builtin defaults -- this is about a > broken upgrade path for properly transitioning the ownership of > nsswitch.conf. Just removing nsswitch would also break libnss_systemd, sssd, > and other configs. I'm not sure if we can add a dependency on pam to glibc. This kind of dependency cycle probably has a lot of unwanted side effects. There must be a better way to pull in authselect. On the other hand, it could be a one of these cases where it is just very hard to support partial rawhide upgrades. (I definitely want to change the glibc default.) > I'm not sure if we can add a dependency on pam to glibc. Right, hence my suggestion to have "Conflicts: pam < 1.5.2-8". > I definitely want to change the glibc default. Yes, fully agreed -- being able to resolve "localhost" without /etc/nsswitch.conf and /etc/hosts would certainly be nice. Right now one needs libnss-systemd's "myhostname" for that. But right now one has to pick between "get rid of /etc/hosts" (and enable myhostname in nsswitch) and "get rid of nsswitch" (and then having to keep /etc/hosts). So much legacy :'-( I just thought that fixing *this* upgrade issue is a simple Conflicts: addition, and that changing the builtin defaults is much more discussion/work/risk. (In reply to Martin Pitt from comment #6) > > I'm not sure if we can add a dependency on pam to glibc. > > Right, hence my suggestion to have "Conflicts: pam < 1.5.2-8". The loop is still there. RPM will not know whether to update pam first or glibc if the new pam requires the new glibc. For example, pam requires libc.so.6(GLIBC_2.34)(64bit), so if you are upgrading from pre-2.34 glibc, it's not installable until glibc is upgraded. This has to be handled in a different way. > > I definitely want to change the glibc default. > > Yes, fully agreed -- being able to resolve "localhost" without > /etc/nsswitch.conf and /etc/hosts would certainly be nice. Right now one > needs libnss-systemd's "myhostname" for that. But right now one has to pick > between "get rid of /etc/hosts" (and enable myhostname in nsswitch) and "get > rid of nsswitch" (and then having to keep /etc/hosts). So much legacy :'-( /etc/hosts will still be needed for a while, for the localhost definition. > I just thought that fixing *this* upgrade issue is a simple Conflicts: > addition, and that changing the builtin defaults is much more > discussion/work/risk. I don't think it's *that* simple because of the potential for a dependency loop, sorry. > The loop is still there. RPM will not know whether to update pam first or > glibc if the new pam requires the new glibc. I see -- that'd be a case for dpkg's "Breaks:", but I don't think rpm has that. > This has to be handled in a different way. OK, too bad -- by now it has hopefully also kind of fixed itself by Fedora mirrors catching up. > > But right now one has to pick > > between "get rid of /etc/hosts" (and enable myhostname in nsswitch) and "get > > rid of nsswitch" (and then having to keep /etc/hosts). So much legacy :'-( > > /etc/hosts will still be needed for a while, for the localhost definition. Not really, "myhostname" takes care of that. I haven't had one for a while, and it'd be nice for distros to stop creating it. But that's of course a tangent. > I don't think it's *that* simple because of the potential for a dependency > loop, sorry. OK, then I supose the only way is to declare the broken dependencies as "wontfix", and not supporting partial upgrades (FWIW, it's not like I was actively trying to do a partial upgrade, dnf just happened to do that when installing packages -- but again, hopefully fixed now with a fresh set of cloud images). Thanks! FEDORA-2022-9421366d9c has been submitted as an update to Fedora 35. https://bodhi.fedoraproject.org/updates/FEDORA-2022-9421366d9c FEDORA-2022-9421366d9c has been pushed to the Fedora 35 testing repository. Soon you'll be able to install the update with the following command: `sudo dnf upgrade --enablerepo=updates-testing --advisory=FEDORA-2022-9421366d9c` You can provide feedback for this update here: https://bodhi.fedoraproject.org/updates/FEDORA-2022-9421366d9c See also https://fedoraproject.org/wiki/QA:Updates_Testing for more information on how to test updates. FEDORA-2023-93246fc470 has been submitted as an update to Fedora 40. https://bodhi.fedoraproject.org/updates/FEDORA-2023-93246fc470 FEDORA-2023-93246fc470 has been pushed to the Fedora 40 stable repository. If problem still persists, please make note of it in this bug report. |