Your message dated Mon, 12 Sep 2022 17:02:48 +0200
with message-id <[email protected]>
and subject line This bug is fixed, also in bullseye, so closing it
has caused the Debian Bug report #1000862,
regarding greendns: compatibility with dnspython v2
to be marked as done.
This means that you claim that the problem has been dealt with.
If this is not the case it is now your responsibility to reopen the
Bug report if necessary, and/or fix the problem forthwith.
(NB: If you are a system administrator and have no idea what this
message is talking about, this may indicate a serious mail system
misconfiguration somewhere. Please contact [email protected]
immediately.)
--
1000862: https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=1000862
Debian Bug Tracking System
Contact [email protected] with problems
--- Begin Message ---
Package: python3-eventlet
Version: 0.26.1-7
Severity: important
Dear Maintainer,
Trying to run mapproxy within gunicorn on bullseye (using eventlet workers), i
faced DNS issues inside mapproxy, leading to errors like
WARNING - mapproxy.source.wms - could not retrieve WMS map: No response from
URL
"http://ids:9280/wxs/pci/wms?layers=cadastre_2021&transparent=True&format=image%2Fpng&bbox=784853.4374968336,6463266.770836733,786573.2291634664,6464986.562503366&width=1300&height=1300&srs=EPSG%3A2154&request=GetMap&version=1.1.1&service=WMS&styles=":
Lookup timed out
this shows that the complete stack is hitting an error message from greendns
(https://github.com/eventlet/eventlet/blob/v0.26.1/eventlet/support/greendns.py#L80),
which is monkeypatching the default socket python module.
looking on the interwebs, i found out
https://github.com/eventlet/eventlet/issues/629 which is supposedly already
fixed in the debian stable package by
https://sources.debian.org/patches/python-eventlet/0.26.1-7/Replace-dnspython-_compute_expiration-by-_compute_times.patch/
but in my experience the bug isnt completely fixed, because a simple reproducer
(as seen on
https://github.com/eventlet/eventlet/issues/629#issuecomment-666549015) still
fails on bullseye:
[30/11 11:32] [email protected]:/tmp $cat testdnspy.py
import eventlet.support.greendns as gd
p = gd.ResolverProxy()
try:
a = p.query('www.dnspython.org')
print(a.rrset)
except Exception as e:
print('bad', e)
[30/11 11:40] [email protected]:/tmp $dpkg -l |egrep '(dnsp|eventl|monoto)'
ii python3-dnspython 2.0.0-1 all DNS
toolkit for Python 3
ii python3-eventlet 0.26.1-7 all
concurrent networking library
ii python3-monotonic 1.5-3 all
implementation of time.monotonic() - Python 3.x
[30/11 11:49] [email protected]:/tmp $python3 testdnspy.py
bad The DNS operation timed out after 5.105822324752808 seconds
using pip to test working envs on another system,
eventlet-0.32.0+dnspython-2.0.0 and dnspython-1.16.0+eventlet-0.26.1 both work
with the test code:
[11:36] daytona:/tmp/ $test/bin/python3 testdnspy.py
dmfrjf4ips8xa.cloudfront.net. 60 IN A 52.222.149.64
dmfrjf4ips8xa.cloudfront.net. 60 IN A 52.222.149.128
dmfrjf4ips8xa.cloudfront.net. 60 IN A 52.222.149.51
dmfrjf4ips8xa.cloudfront.net. 60 IN A 52.222.149.55
maybe more bits from https://github.com/eventlet/eventlet/pull/722 should be
backported ?
-- System Information:
Debian Release: 11.1
APT prefers stable-security
APT policy: (500, 'stable-security'), (500, 'stable')
Architecture: amd64 (x86_64)
Kernel: Linux 4.19.0-10-amd64 (SMP w/40 CPU threads)
Locale: LANG=C.UTF-8, LC_CTYPE=C.UTF-8 (charmap=UTF-8), LANGUAGE not set
Shell: /bin/sh linked to /usr/bin/dash
Init: systemd (via /run/systemd/system)
Versions of packages python3-eventlet depends on:
ii netbase 6.3
ii python3 3.9.2-3
pn python3-dnspython <none>
pn python3-greenlet <none>
pn python3-monotonic <none>
ii python3-six 1.16.0-2
python3-eventlet recommends no packages.
Versions of packages python3-eventlet suggests:
pn python-eventlet-doc <none>
--- End Message ---
--- Begin Message ---
This bug is fixed, also in bullseye, so closing it
--- End Message ---