swift/swift/common
Romain de Joux 8eba4f8c8f Use eventlet.patcher.original to get Python select module in get_hub
get_hub function was added in commit b155da42 with the idea to bypass
eventlet automatic hub selection that prefers epoll if available by default.

Since version 0.20.0 eventlet removed select.poll() function in its patched
select module (eventlet.green.select), see:
   - https://github.com/eventlet/eventlet/commit/614a20462

So if eventlet monkey patching is done before a get_hub() call (as now in
wsgi.py since commit c9410c7d) if we use 'import select' we get the eventlet
version that don't have poll attribute.

To prevent that we use eventlet.patcher.original function to get python select
module to test if poll() is available on current platform.

Change-Id: I69b3db3951b3d3b6583845978deb2883492e7f0f
Closes-Bug: 1804627
(cherry picked from commit 4809884d9f)
2019-01-03 11:42:20 -08:00
..
middleware Fix SLO delete for accounts with non-ASCII names. 2018-07-25 20:19:04 +00:00
ring Disallow fractional replicas in EC policies 2018-01-29 16:57:46 -08:00
__init__.py Start using Hacking 2013-07-15 11:41:58 +02:00
base_storage_server.py Add server type in OPTIONS response 2015-01-30 00:25:28 +05:30
bufferedhttp.py Remove unnecessary exception handling 2017-07-17 19:07:07 +00:00
constraints.py Disallow x-delete-at equal to x-timestamp 2018-01-08 15:08:43 +00:00
container_sync_realms.py Use ConfigParser instead of SafeConfigParser 2016-09-12 15:02:40 +07:00
daemon.py Use "poll" or "selects" Eventlet hub for all Swift daemons. 2017-10-12 10:45:12 -07:00
db_replicator.py Use check_drive consistently 2017-11-01 16:33:40 +00:00
db.py Be more tolerant of exception messages from sqlite 2017-10-18 18:15:11 -05:00
direct_client.py Move listing formatting out to proxy middleware 2017-09-15 06:38:26 +00:00
exceptions.py Symlink implementation. 2017-12-13 21:26:12 +00:00
header_key_dict.py Py3: Fixes header key dict 2016-11-08 12:22:12 -08:00
http.py Fix pep8 E265 warning of hacking 0.10 2015-07-30 09:33:18 +02:00
internal_client.py Merge "Reset state every iteration to avoid stale reference" 2018-01-25 06:28:43 +00:00
linkat.py Make object creation more atomic in Linux 2016-08-24 14:56:00 +05:30
manager.py Add checksum to object extended attributes 2017-11-03 13:30:05 -04:00
memcached.py Fix memcached exception out of range stacktrace 2017-09-25 18:15:56 -07:00
request_helpers.py Add support for data segments to SLO and SegmentedIterable 2018-01-31 02:13:22 +00:00
splice.py Replace reduce and unichr , these are no longer available in py3 2015-07-09 21:56:29 +05:30
storage_policy.py Disallow fractional replicas in EC policies 2018-01-29 16:57:46 -08:00
swob.py Respond 400 Bad Request when Accept headers fail to parse 2017-10-13 12:35:21 -07:00
utils.py Use eventlet.patcher.original to get Python select module in get_hub 2019-01-03 11:42:20 -08:00
wsgi.py Move eventlet patch before call to loadapp 2018-02-26 14:10:19 +00:00