- 09 Nov, 2012 1 commit
-
-
Martin Hurton authored
-
- 27 Aug, 2012 1 commit
-
-
Arthur O'Dwyer authored
Compiling without warnings is a good goal, because it makes new warnings (which probably indicate bugs) stand out rather than getting lost in the spam. My fixes fall into two categories: - Adding (void) casts of unused parameters, where their unusedness seems like a TODO (or in some cases a bug?). - Removing parameter names altogether, where the function is clearly a stub that will never use its parameters. Should be no change in behavior.
-
- 12 Jun, 2012 2 commits
-
-
Ian Barber authored
This patch, salvaged from a trainwreck accidental merge earlier, adds a new sockopt, ZMQ_DELAY_ATTACH_ON_CONNECT which prevents a end point being available to push messages to until it has fully connected, making connect work more like bind. This also applies to reconnecting sockets, which may cause message loss of in-queue messages, so it is sensible to use this in conjunction with a low HWM and potentially an alternative acknowledgement path. Notes on most of the individual commits can be found the repository log.
-
Ian Barber authored
Revert "After speaking with Ben Gray and the discussion on the mailing list, this is an attempt to create a sockopt to allow connecting pipes to not immediately be available for traffic. The problem is in a PUSH to many PULL situation, where there is a connect to a PULL which is not there. This connect will immediately create a pipe (unlike bind), and traffic will be load balanced to that pipe. This means if there is a persistently unavailable end point then the traffic will queue until HWM is hit, and older messages will be lost." This reverts commit fe3fb419.
-
- 01 Jun, 2012 1 commit
-
-
Ian Barber authored
After speaking with Ben Gray and the discussion on the mailing list, this is an attempt to create a sockopt to allow connecting pipes to not immediately be available for traffic. The problem is in a PUSH to many PULL situation, where there is a connect to a PULL which is not there. This connect will immediately create a pipe (unlike bind), and traffic will be load balanced to that pipe. This means if there is a persistently unavailable end point then the traffic will queue until HWM is hit, and older messages will be lost. This patch adds a sockopt ZMQ_DELAY_ATTACH_ON_CONNECT, which if set to 1 will attempt to preempt this behavior. It does this by extending the use of the session_base to include in the outbound as well as the inbound pipe, and only associates the pipe with the socket once it receives the connected callback via a process_attach message. This works, and a test has been added to show so, but may introduce unexpected complications. The shutdown logic in this class has become marginally more awkward because of this, requiring the session to serve as the sink for both pipes if shutdown occurs with a still-connecting pipe in place. It is also possible there could be issues around flushing the messages, but as I could not directly think how to create such an issue I have not written any code with regards to that. The documentation has been updated to reflect the change, but please do check over the code and test and review.
-
- 31 May, 2012 2 commits
-
-
Martin Hurton authored
-
Martin Hurton authored
When removing a pipe from the lb or fq component, make sure we do not remove another pipe from the active set.
-
- 28 May, 2012 1 commit
-
-
Martin Hurton authored
-
- 28 Mar, 2012 1 commit
-
-
Martin Hurton authored
The check_write method does not use the passed message. The parameter was needed to implement the swap. As the swap is not supported anymore, it is safe to remove this parameter.
-
- 15 Feb, 2012 1 commit
-
-
Pieter Hintjens authored
- anonymous contributor This reverts commit 7b7d4042.
-
- 10 Feb, 2012 1 commit
-
-
niXman authored
-
- 01 Nov, 2011 2 commits
-
-
Martin Sustrik authored
Signed-off-by:
Martin Sustrik <sustrik@250bpm.com>
-
Martin Sustrik authored
Signed-off-by:
Martin Sustrik <sustrik@250bpm.com>
-
- 31 Oct, 2011 1 commit
-
-
Martin Sustrik authored
Signed-off-by:
Martin Sustrik <sustrik@250bpm.com>
-
- 23 Jun, 2011 1 commit
-
-
Martin Sustrik authored
Signed-off-by:
Martin Sustrik <sustrik@250bpm.com>
-
- 20 Jun, 2011 1 commit
-
-
Martin Sustrik authored
So far there was no distinction between message parts used by 0MQ and message parts used by user. Now, the message parts used by 0MQ are marked as 'LABEL'. Signed-off-by:
Martin Sustrik <sustrik@250bpm.com>
-
- 23 May, 2011 1 commit
-
-
Martin Sustrik authored
So far, the pipe termination code was spread among socket type classes, fair queuer, load balancer, etc. This patch moves all the associated logic to a single place. Signed-off-by:
Martin Sustrik <sustrik@250bpm.com>
-
- 22 May, 2011 1 commit
-
-
Martin Sustrik authored
So far, there was a pair of unidirectional pipes between a socket and a session (or an inproc peer). This resulted in complex problems with half-closed states and tracking which inpipe corresponds to which outpipe. This patch doesn't add any functionality in itself, but is essential for further work on features like subscription forwarding. Signed-off-by:
Martin Sustrik <sustrik@250bpm.com>
-
- 15 May, 2011 1 commit
-
-
Martin Sustrik authored
Signed-off-by:
Martin Sustrik <sustrik@250bpm.com>
-
- 21 Apr, 2011 1 commit
-
-
Martin Sustrik authored
This patch addresses serveral issues: 1. It gathers message related functionality scattered over whole codebase into a single class. 2. It makes zmq_msg_t an opaque datatype. Internals of the class don't pollute zmq.h header file. 3. zmq_msg_t size decreases from 48 to 32 bytes. That saves ~33% of memory in scenarios with large amount of small messages. Signed-off-by:
Martin Sustrik <sustrik@250bpm.com>
-
- 20 Mar, 2011 1 commit
-
-
Martin Sustrik authored
If the peer getting the message have disconnected in the middle of multiplart message, the remaining part of the message went to a different peer. This patch fixes the issue. Signed-off-by:
Martin Sustrik <sustrik@250bpm.com>
-
- 02 Mar, 2011 1 commit
-
-
Martin Sustrik authored
Signed-off-by:
Martin Sustrik <sustrik@250bpm.com>
-
- 15 Dec, 2010 1 commit
-
-
Mikko Koppanen authored
Fixes swap::full () functionality Signed-off-by:
Mikko Koppanen <mkoppanen@php.net>
-
- 30 Oct, 2010 1 commit
-
-
Martin Sustrik authored
Signed-off-by:
Martin Sustrik <sustrik@250bpm.com>
-
- 18 Sep, 2010 2 commits
-
-
Martin Sustrik authored
-
Martin Sustrik authored
-
- 10 Sep, 2010 1 commit
-
-
Martin Sustrik authored
-
- 07 Sep, 2010 1 commit
-
-
Martin Sustrik authored
-
- 01 Sep, 2010 1 commit
-
-
Martin Sustrik authored
-
- 25 Aug, 2010 2 commits
-
-
Martin Sustrik authored
-
Martin Sustrik authored
Sockets may now be migrated between OS threads; sockets may not be used by more than one thread at any time. To migrate a socket to another thread the caller must ensure that a full memory barrier is called before using the socket from the target thread. The new zmq_close() semantics implement the behaviour discussed at: http://lists.zeromq.org/pipermail/zeromq-dev/2010-July/004244.html Specifically, zmq_close() is now deterministic and while it still returns immediately, it does not discard any data that may still be queued for sending. Further, zmq_term() will now block until all outstanding data has been sent. TODO: Many bugs have been introduced, needs testing. Further, SO_LINGER or an equivalent mechanism (possibly a configurable timeout to zmq_term()) needs to be implemented.
-
- 27 Mar, 2010 2 commits
-
-
Martin Sustrik authored
-
Martin Sustrik authored
-
- 13 Mar, 2010 1 commit
-
-
Martin Sustrik authored
-
- 12 Mar, 2010 1 commit
-
-
Martin Hurton authored
This commit introduces the necessary changes necessary for implementing flow control. None of the socket types implements the flow control yet. The code will crash when the flow control is enabled and the thw lwm is reached. The following commits will add flow-control support for individual socket types.
-
- 11 Mar, 2010 1 commit
-
-
Martin Lucina authored
C and C++ headers moved from bindings/ to include/, bindings/ removed --with-c and --with-cpp options to configure removed, C and C++ now built and installed by default
-
- 10 Feb, 2010 1 commit
-
-
Martin Hurton authored
-
- 05 Jan, 2010 1 commit
-
-
Martin Sustrik authored
-
- 15 Dec, 2009 1 commit
-
-
Martin Sustrik authored
zmq_encoder/decoder are able to add/trim prefixes from messages; fair queueing and load balancing algorithms factorised into separate classes
-