Age | Commit message (Collapse) | Author |
|
|
|
libxs (as opposed to libzmq) requires at least one I/O thread per
context. Thus, "no I/O thread available" error doesn't make sense
anyome.
This patch removes the code and the documentation.
It keeps the definition of EMTHREAD itself for backward compatibility.
Signed-off-by: Martin Sustrik <sustrik@250bpm.com>
|
|
Signed-off-by: Martin Sustrik <sustrik@250bpm.com>
|
|
Signed-off-by: Martin Sustrik <sustrik@250bpm.com>
|
|
Previous patch have broken flushing a delimiter in pipe_t::terminate()
function. This patch allows the flush to happen even if pipe state
is set to 'terminated'.
Signed-off-by: Martin Sustrik <sustrik@250bpm.com>
|
|
* src/pipe.cpp (flush): Fix bogus typo: '&&' was used instead of '||'
|
|
|
|
|
|
This patch introduces following features:
- XS_PLUGIN context option to add plugins to libxs
- XS_FILTER option to switch between different filter types
- Automatic loading of plug-ins is *not* implemented.
From the implementation point of view:
- standard prefix filter is implemented as a pluggable filter
- trie_t and mtrie_t are joined into a single class
- the code for 0MQ/3.1 compatibility is left in in the form of comments
- new test for testing re-subscriptions is added
Signed-off-by: Martin Sustrik <sustrik@250bpm.com>
|
|
Although not a POSIX behaviour, FreeBSD can fail with ECONNRESET.
Signed-off-by: Martin Sustrik <sustrik@250bpm.com>
|
|
- XS_PROTOCOL option added
- libxs ignores when unused flags are set to 1 (0MQ/2.1 bug)
- compatibility tests added
Signed-off-by: Martin Sustrik <sustrik@250bpm.com>
|
|
The existing code for definining the XS_HAVE_* macros for the polling
mechanism may fail if the platform's `tr' command does not support the
GNU syntax. Replacing the hand-made declaration with autoconf macros
yields the same results on all platforms.
Signed-off-by: Gabriele Svelto <gabriele.svelto@gmail.com>
|
|
Signed-off-by: Martin Sustrik <sustrik@250bpm.com>
|
|
- Use consistent quoting in M4 macros
- Use portable M4sh shell constructs where possible
- More consistent indentation and line wrapping
- Split lists of files or functions on multiple lines to simplify adding
and removing elements from them
Signed-off-by: Gabriele Svelto <gabriele.svelto@gmail.com>
|
|
Signed-off-by: Martin Sustrik <sustrik@250bpm.com>
|
|
Signed-off-by: Martin Lucina <martin@lucina.net>
|
|
This option allows to turn on TCP keepalives on the underlying connections.
Signed-off-by: Martin Sustrik <sustrik@250bpm.com>
|
|
When connection with duplicate identity arrives it is ignored.
Till now it resulted in assertion.
Signed-off-by: Martin Sustrik <sustrik@250bpm.com>
|
|
Signed-off-by: Martin Sustrik <sustrik@250bpm.com>
|
|
|
|
|
|
|
|
Signed-off-by: Paul Colomiets <paul@colomiets.name>
|
|
Signed-off-by: Martin Sustrik <sustrik@250bpm.com>
|
|
Signed-off-by: Martin Sustrik <sustrik@250bpm.com>
|
|
Error handling of asynchronous connect for IPC was incorrectly copied
from TCP transport. This patch fixes the problem.
Signed-off-by: Martin Sustrik <sustrik@250bpm.com>
|
|
On reconnections, state machine in req_session_t is
reset to the initial state.
Signed-off-by: Martin Sustrik <sustrik@250bpm.com>
|
|
When reconnection happened, identity was not resent to the peer.
Fixed.
Signed-off-by: Martin Sustrik <sustrik@250bpm.com>
|
|
This patch takes into account that IPC transport is not supported
on OpenVMS platform.
Signed-off-by: Martin Sustrik <sustrik@250bpm.com>
|
|
Reconnect test have run TCP reconnect test twice instead of
doing one test for TCP and one for IPC. Fixed.
Signed-off-by: Martin Sustrik <sustrik@250bpm.com>
|
|
Signed-off-by: Martin Sustrik <sustrik@250bpm.com>
|
|
Signed-off-by: Martin Sustrik <sustrik@250bpm.com>
|
|
Signed-off-by: Piotr Sikora <piotr.sikora@frickle.com>
|
|
Signed-off-by: Piotr Sikora <piotr.sikora@frickle.com>
|
|
|
|
Signed-off-by: Martin Lucina <martin@lucina.net>
|
|
Signed-off-by: Martin Lucina <martin@lucina.net>
|
|
Signed-off-by: Martin Sustrik <sustrik@250bpm.com>
|
|
|
|
Signed-off-by: Martin Lucina <martin@lucina.net>
|
|
|
|
Signed-off-by: Martin Lucina <martin@lucina.net>
|
|
Signed-off-by: Martin Lucina <martin@lucina.net>
|
|
Signed-off-by: Martin Sustrik <sustrik@250bpm.com>
|
|
Originally, the parameter was of type long which is incompatible
with POSIX poll() function.
Signed-off-by: Martin Sustrik <sustrik@250bpm.com>
|
|
Signed-off-by: Martin Sustrik <sustrik@250bpm.com>
|
|
|
|
Moved xs_stopwatch_* functions from xs_utils.cpp/xs_utils.h, and
removed those files. This leaves us with a single header file for
libxs.
Signed-off-by: Martin Lucina <martin@lucina.net>
|
|
Reduced xs_utils to the minimum functions required (xs_stopwatch_*)
xs_sleep, xs_thread_* are internal to unit tests and have been moved
to testutil.hpp, useless use of xs_sleep in perf/ has been removed.
Signed-off-by: Martin Lucina <martin@lucina.net>
|
|
Signed-off-by: Martin Sustrik <sustrik@250bpm.com>
|