Skip to content

Commit

Permalink
dns: EVENTLET_NO_GREENDNS option is back, green is still default
Browse files Browse the repository at this point in the history
Sorry for negation in name, perfectionists want EVENTLET_GREEN_DNS=no
but I figured it's lesser evil than reviving same behavior under different name.

This works around #383
at the cost of resolving blocking other greenthreads.
  • Loading branch information
temoto committed Feb 2, 2017
1 parent 0fdb115 commit f9e3ff7
Showing 1 changed file with 7 additions and 13 deletions.
20 changes: 7 additions & 13 deletions eventlet/green/socket.py
@@ -1,6 +1,5 @@
import os
import sys
import warnings

__import__('eventlet.green._socket_nodns')
__socket = sys.modules['eventlet.green._socket_nodns']
Expand All @@ -18,18 +17,13 @@
slurp_properties(__socket, globals(), srckeys=dir(__socket))


if os.environ.get("EVENTLET_NO_GREENDNS", '').lower() == "yes":
warnings.warn(
'EVENTLET_NO_GREENDNS is noop, dnspython is bundled and DNS resolution is always green',
DeprecationWarning,
stacklevel=2,
)

from eventlet.support import greendns
gethostbyname = greendns.gethostbyname
getaddrinfo = greendns.getaddrinfo
gethostbyname_ex = greendns.gethostbyname_ex
getnameinfo = greendns.getnameinfo
if os.environ.get("EVENTLET_NO_GREENDNS", '').lower() != 'yes':
from eventlet.support import greendns
gethostbyname = greendns.gethostbyname
getaddrinfo = greendns.getaddrinfo
gethostbyname_ex = greendns.gethostbyname_ex
getnameinfo = greendns.getnameinfo
del greendns


def create_connection(address,
Expand Down

0 comments on commit f9e3ff7

Please sign in to comment.