summaryrefslogtreecommitdiff
path: root/eventlet/hubs
Commit message (Collapse)AuthorAgeFilesLines
* hubs: delay import pkg_resourcesSergey Shepelev2014-12-301-9/+12
| | | | https://github.com/eventlet/eventlet/issues/177
* Improve PEP8 conformanceJakub Stasiak2014-11-111-1/+2
|
* hubs: drop Twisted supportSergey Shepelev2014-10-291-270/+0
|
* Reformat with autopep8Jakub Stasiak2014-10-114-12/+16
|
* PEP-8 fixesSergey Shepelev2014-08-277-41/+57
|
* hubs: defang after remove; related to second simultaneous read issue94-second-readMichael Kerrin2014-08-121-2/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | https://github.com/eventlet/eventlet/issues/94 We have to defang the listener after removing it from the hub Otherwise we never actaully remove it from the hub and get a return of the second simultanous read. This should fix this issue. Turn off __builtin__ monkey patching by default The reason is that eventlet.greenio.GreenPipe tries to adapt an original file f, and performs the following check isinstance(f, file) f is an original file object with file is now our file method. This fails causing TypeError nova-api exercises this Fix up zmq to use the extended add signature Having heard no problems relating eventlet and zmq, I'm not going to dive in and drop random pataches against it. If the 'Second simultaneous *er' crops up against zmw then we at least now have the machinery to address it.
* Fix second simultaneous read (parallel paramiko issue)Jan Grant2014-08-126-34/+173
| | | | | | | | | | | | | | | | | | | | | | | | | https://github.com/eventlet/eventlet/issues/94 Because of the way paramiko utilises a client thread to manage its communication, it's not been compatible with eventlet when run in parallel. It's not the only place these problems would arise. This stemmed from the reuse of a fileno by the underlying OS. Because listeners are registered against this descriptor, it would be possible for old listeners to receive events destined for newer descriptors; occasionally code would attempt to utilise the new descriptor from a different greenlet, giving rise to the 'second simultaneous read' problem. Whenever a Python object is created to wrap one of these filenos, we now signal the hub in order that it can correctly obsolete extant listeners against that fileno. This is a fairly tricky operation, due to the way that listeners' threads are interleaved with the hub's operation - there are a number of small fixes here to defend against one listener from effectively obsoleting another when an event is pending against it.
* Python 3 compatibility fixesJakub Stasiak2014-07-182-3/+4
| | | | | | Closes GH-102 Closes GH-103 Closes GH-104
* PEP8 whitespaceSergey Shepelev2014-06-121-4/+4
|
* python3 compatibilitySergey Shepelev2014-04-241-4/+7
| | | | | | | | | | | | - __next__ for iterator interface - six.next() to get next item - list(dict.keys()) - popen2.popen4 -> subprocess - s2b -> b"..." literals - deprecated assertEquals -> assertEqual - hub_test test_fork using run_python - 1L -> 1 long literal - many PEP-8 fixes
* python3 compatibility: range, zip, StringIOViktors2014-04-231-7/+9
|
* pypy compatibilityJakub Stasiak2014-04-151-1/+1
|
* python3 compat fixes; Thanks to Astrum Kuo郭旭星Astrum Kuo2014-04-021-4/+5
| | | | | | https://github.com/eventlet/eventlet/pull/82 Celery could work with eventlet in Python3 now
* python3 compat fixesVictor Sergeyev2014-03-281-2/+2
| | | | https://github.com/eventlet/eventlet/pull/59
* python3 compat: 2to3: `except E as e:` syntaxDavanum Srinivas2013-12-035-9/+9
| | | | | | | First step to Python 3 compatibility "2to3 -w -f except ." See [1] [1] http://docs.python.org/2/library/2to3.html#fixers
* hubs: get_default_hub() on Windows broken by kqueue; Thanks to Paul OppenheimSergey Shepelev2013-07-022-6/+18
| | | | | Fixes https://github.com/eventlet/eventlet/issues/38 +autopep8
* hubs: kqueue: squashed fixesEdward George2013-06-091-12/+35
| | | | | | | | * try and recover from bad file descriptor error after fork * remove some stuff in kqueue hub that was added by accident * skip test_closure test with kqueue hub kqueue hub cannot detect closures of file descriptors * simplify _reinit_kqueue()
* hubs: kqueue: enable kqueue hub; avoid modifying read-only attributesYAMAMOTO Takashi2013-06-092-11/+17
|
* hubs: kqueue: initial implementation found in my repoEdward George2013-06-091-0/+81
|
* doc: hubs: Point to the correct function in exception messageFloris Bruynooghe2013-06-051-1/+1
|
* hubs: EVENTLET_HUB can point to external modulesEdward George2013-02-191-2/+26
|
* doc: hubs: update link to common.txt (note on internal API functions)Sergey Shepelev2013-01-081-16/+16
|
* ensure that new hub greenlet is parent of old, dead hub greenlet.Edward George2012-08-111-2/+12
| | | | also, ensure this happens when eventlet.greenthread.kill() is used.
* Import errno so the exception handler worksJohannes Erdfelt2012-06-271-0/+1
|
* Import get_errno from eventlet.support so the exception handler worksJohannes Erdfelt2012-06-271-0/+1
| | | | Fixes issue #123
* Initial implementation of hubless zeromq support using ZMQ_FD and ZMQ_EVENTS.Zed Shaw2011-04-081-110/+0
|
* Ignoring EEXIST in epoll hub on register. Should fix #80.Ryan Williams2011-04-021-5/+9
|
* Fixes #74, removing filenos from the hub when they raise a value error, ↵Ryan Williams2011-01-231-14/+19
| | | | thanks to Edward George for the repro and fix.
* Ha ha, importing patch from #71 (thanks, Alexey, and fixing up the AUTHORS.Ryan Williams2010-12-201-13/+24
|
* Merge from trunkBen Ford2010-12-043-8/+21
|\
| * Fixes #66. Not super-happy that it doesn't work in epoll, but haven't ↵Ryan Williams2010-11-202-7/+14
| | | | | | | | cracked that nut yet.
* | Made a start on the zeromq documentationBen Ford2010-10-212-1/+2
| |
* | Remove commented codeBen Ford2010-10-181-7/+0
|/
* Refactored the green version of zmq to use a factory function for ContextBen Ford2010-10-121-3/+2
|
* Merged latestBen Ford2010-10-121-2/+5
|\
| * Fix for unusual kill() error that was probably introduced by a bugfix in ↵Ryan Williams2010-10-021-1/+4
| | | | | | | | greenlet.
| * Finally figured out the line that was causing the hub tests to ↵Ryan Williams2010-10-021-1/+1
| | | | | | | | intermittently fail. Spelling fail! <insert rant about how a strongly-typed language would have caught this bug>
* | Added some logic to zmq so that the context will be unique per threadBen Ford2010-09-221-1/+18
| |
* | First stab at zeromq support. This consists of:Ben Ford2010-09-201-0/+83
|/ | | | | | | | | | | | | | | | | | | A new hub: This closely mirrors the poll hub with some of the internal logic changed to reflect zmq's flags. A green module for zmq: This subclasses Context and Socket to ensure calls are non blocking. A (very sparse) beginings of a test module. An example: A melding of the pyzmq chat example and the eventlet telnet chat example. TODO zmq_poll chokes if the sockets passed to it come from different contexts. As context is the entry point to everything else then it would make sense to include a check in here that each thread has only one context instance. By context being the entry point I mean: ctx = zmq.Context() socket = ctx.socket(zmq.<type-of-socket>) This call to socket is repeated for each socket you want and ctx must be the same one for each thread. Tests. I'd like to get to the point f having all zmq socket pairs tested - and perhaps a nice benchmark suite too.
* Fix blocking detector for cases that don't have the itimer module installed.Ryan Williams2010-08-281-11/+13
|
* Part two of the previous commit >_<R. Tyler Ballance2010-08-241-10/+8
|
* Add support for using signal.setitimer or the itimer module for blocking ↵R. Tyler Ballance2010-08-241-3/+8
| | | | | | | detection The itimer module can be found here: http://github.com/slideinc/itimer for versions of Python prior to 2.6
* Removed circular import in twistedr.py, and Eventlet stops using the Twisted ↵Ryan Williams2010-08-172-10/+6
| | | | | | hub by default if Twisted has been imported. If you want to use the Twisted hub you'll have to explicitly enable it via the EVENTLET_HUB environment variable or use_hub('twistedr') in code.
* Merging rdw's blocking detector changes with my ownR. Tyler Ballance2010-06-241-4/+2
|\
| * Removed duplicate code.Ryan Williams2010-06-241-4/+2
| |
* | Add support for the itimer module with blocking detectionR. Tyler Ballance2010-06-241-1/+14
|/ | | | | | This will allow for subsecond blocking detection thanks to the itimer module recently released by Slide, Inc: http://github.com/slideinc/itimer
* MergeRyan Williams2010-06-241-1/+1
|\
| * Fixed behavior on suspend, thanks to Michael Carter for identifying the problem.Ryan Williams2010-05-251-1/+1
| |
* | Probably horribly broken block detecter, only for poll/epoll hubs.Ryan Williams2010-05-072-2/+35
|/
* Included next_timers in the cleanup, thanks to redbo's suggestion.Ryan Williams2010-05-061-1/+2
|