Bug 1607967
| Summary: | UnexpectedSource: got a response from ('2001:4860:4860:0:0:0:0:8888', 53, 0, 0) instead of ('2001:4860:4860::8888', 53, 0, 0) | ||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|
| Product: | Red Hat OpenStack | Reporter: | David Vallee Delisle <dvd> | ||||||||
| Component: | python-eventlet | Assignee: | Lon Hohberger <lhh> | ||||||||
| Status: | CLOSED ERRATA | QA Contact: | Shai Revivo <srevivo> | ||||||||
| Severity: | high | Docs Contact: | |||||||||
| Priority: | urgent | ||||||||||
| Version: | 13.0 (Queens) | CC: | bcafarel, dvd, joflynn, jschluet, lhh, marjones, mburns, mkrcmari, pforsber, ragiman, srevivo | ||||||||
| Target Milestone: | z2 | Keywords: | Triaged, ZStream | ||||||||
| Target Release: | 13.0 (Queens) | ||||||||||
| Hardware: | Unspecified | ||||||||||
| OS: | Unspecified | ||||||||||
| Whiteboard: | |||||||||||
| Fixed In Version: | python-eventlet-0.20.1-5.1.el7ost | Doc Type: | Bug Fix | ||||||||
| Doc Text: |
There was an issue in python-eventlet UDP address handling that resulted in some IPv6 addresses being handled incorrectly in some cases. As a result, when receiving DNS responses via UDP, python-eventlet ignored the response and stalled for several seconds, severely impacting performance. This issue is now resolved.
|
Story Points: | --- | ||||||||
| Clone Of: | Environment: | ||||||||||
| Last Closed: | 2018-08-29 16:33:16 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
David Vallee Delisle
2018-07-24 15:54:18 UTC
For information, our customer is having this error in the logs:
2018-07-24 12:39:48.515 55 ERROR dns.resolver [req-c444b6ff-a64c-41a8-bc81-801081c59832 - - - - -] : UnexpectedSource: got a response from ('2001:4860:4860:0:0:0:0:8888', 53, 0, 0) instead of ('2001:4860:4860::8888', 53, 0, 0)
Something like this might be a better way to compare IPv6 ~~~ Python 2.7.15 (default, May 15 2018, 15:37:31) [GCC 7.3.1 20180303 (Red Hat 7.3.1-5)] on linux2 Type "help", "copyright", "credits" or "license" for more information. >>> from socket import inet_pton, AF_INET6 >>> source = inet_pton(AF_INET6, "2001:4860:4860::8888") >>> dest = inet_pton(AF_INET6, "2001:4860:4860:0:0:0:0:8888") >>> if source == dest: ... print("same") ... same >>> print("Source %s Dest: %s", (source, dest)) ('Source %s Dest: %s', (' \x01H`H`\x00\x00\x00\x00\x00\x00\x00\x00\x88\x88', ' \x01H`H`\x00\x00\x00\x00\x00\x00\x00\x00\x88\x88')) ~~~ Merged upstream: https://github.com/eventlet/eventlet/pull/510 Created attachment 1471908 [details]
Backport (part 1)
Created attachment 1471909 [details]
Backport (part 2)
Created attachment 1471910 [details]
Unit tests (part 3)
This bug is marked for inclusion in the errata but does not currently contain draft documentation text. To ensure the timely release of this advisory please provide draft documentation text for this bug as soon as possible. If you do not think this bug requires errata documentation, set the requires_doc_text flag to "-". To add draft documentation text: * Select the documentation type from the "Doc Type" drop down field. * A template will be provided in the "Doc Text" field based on the "Doc Type" value selected. Enter draft text in the "Doc Text" field. eventlet upstream unit tests pass with the fix + no relevant regressions identified in OSP CI, so marking this VERIFIED 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://access.redhat.com/errata/RHBA-2018:2573 |