Bug 1292613
Summary: | Race condition between NetworkManager and anaconda on IPv6-only hosts | ||||||||
---|---|---|---|---|---|---|---|---|---|
Product: | Red Hat Enterprise Linux 7 | Reporter: | Bryan Wann <bwann> | ||||||
Component: | anaconda | Assignee: | Jiri Konecny <jkonecny> | ||||||
Status: | CLOSED ERRATA | QA Contact: | Release Test Team <release-test-team-automation> | ||||||
Severity: | unspecified | Docs Contact: | |||||||
Priority: | unspecified | ||||||||
Version: | 7.1 | CC: | bwann, josef, mbanas, mikolaj | ||||||
Target Milestone: | rc | Keywords: | OtherQA | ||||||
Target Release: | --- | Flags: | bwann:
needinfo-
|
||||||
Hardware: | Unspecified | ||||||||
OS: | Unspecified | ||||||||
Whiteboard: | |||||||||
Fixed In Version: | anaconda-21.48.22.63-1 | Doc Type: | Bug Fix | ||||||
Doc Text: | Story Points: | --- | |||||||
Clone Of: | Environment: | ||||||||
Last Closed: | 2016-11-03 23:20: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: | |||||||||
Attachments: |
|
Description
Bryan Wann
2015-12-17 22:39:27 UTC
Created attachment 1106894 [details]
Log output after patch applied
Issue originally reported on Anaconda's github page, but my workaround there was incorrect: https://github.com/rhinstaller/anaconda/issues/466 Hi Bryan, would you be able to help with testing of this bug once the fix is available? Thanks, Martin Sure thing Hello Bryan, from your first comment I understand that your issue should be fixed now by the commit you have mentioned. https://github.com/rhinstaller/anaconda/commit/8c2544c6f537240179569d0068a7b22250e21a25 If I am correct could you please test your issue in RHEL 7.2 where this patch should be included. Thank you No, it's not the same thing. The code that's already in Anaconda handles retries for package repo metadata. My issue happens earlier when Anaconda is fetching .treeinfo since it's the first download operation that happens during the install. My fix replicated the same code from that commit and applied it to packaging/__init__.py so we retry fetching there. This gives us enough time for v6 to have gone through things like duplicate address detection, RS/RA and have a usable gateway. This all could take 1-4 seconds to complete. Otherwise we will likely fail downloading .treeinfo and mark the repo as unusable. I was looking at the NetworkManager code in Anaconda yesterday. It looks like the root cause is that we wait for NM to signal any sort of 'connected' state, i.e. local, site, global before allowing Anaconda to continue. This seems kind of broken because if we have to go outside our local network for package repos/etc but proceed on a connected_local state we could miss out. (The FIXME comment in the code alludes to this) NM code where this happens: https://github.com/rhinstaller/anaconda/blob/master/pyanaconda/nm.py#L159 Unfortunately a more rigorous fix for this seems pretty thorny, we'd have to figure out what repos/resources during installation are remote. Perhaps this retry mechanism for .treeinfo is the best compromise. Sorry for my misunderstanding of your issue and thank you for your patch and for explanation. I'll look on this soon. PR: https://github.com/rhinstaller/anaconda/pull/561 I've created patch based on your patch Bryan. Thank you for your work on the patch. The final solution (Network Manager state) seems to me too invasive for the RHEL but I'm going to create that fix to master branch later. This bug was accidentally moved from POST to MODIFIED via an error in automation, please see mmccune with any questions Hi Brian, this issue should be fixed in RHEL-7.3 Beta compose. Could you please retest that the issue is fixed for you? Thanks, Martin Bryan, any update? Thanks, M. Since the problem described in this bug report should be resolved in a recent advisory, it has been closed with a resolution of ERRATA. For information on the advisory, and where to find the updated files, follow the link below. If the solution does not work for you, open a new bug report. https://rhn.redhat.com/errata/RHEA-2016-2158.html |