Commit Graph

186 Commits

Author SHA1 Message Date
Martin Sustrik
651c1adc80 sys transport introdced; inproc://log moved to sys://log 2010-09-01 15:24:46 +02:00
Martin Sustrik
fba90af8a7 Issue 54 - socket_base.cpp:162 comparison error 2010-08-30 12:10:40 +02:00
Martin Sustrik
42000d2c4f terminology unified: revive->activate 2010-08-28 10:15:03 +02:00
Martin Sustrik
92923cd40b bug in pipe deactivation fixed 2010-08-28 08:44:12 +02:00
Martin Sustrik
b608c19c5a MSVC build fixed 2010-08-25 15:39:21 +02:00
Martin Sustrik
9b8993efb4 elementary fixes to the named session 2010-08-25 15:39:21 +02:00
Martin Sustrik
43e34d0281 engine leak fixed; pgm compilation fixed 2010-08-25 15:39:20 +02:00
Martin Sustrik
45f83d78a5 one more dezombification bug fixed 2010-08-25 15:39:20 +02:00
Martin Sustrik
936dbf956b dezombification procedure fixed 2010-08-25 15:39:20 +02:00
Martin Sustrik
d13933bc62 I/O object hierarchy implemented 2010-08-25 15:39:20 +02:00
Martin Sustrik
05d908492d WIP: Socket migration between threads, new zmq_close() semantics
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.
2010-08-25 15:39:20 +02:00
Martin Hurton
ca057c7db8 Fix identity generation for transient inproc connections 2010-07-10 23:02:50 +02:00
Martin Hurton
fca2e8e8cc Add SWAP support 2010-06-21 15:06:51 +02:00
Martin Sustrik
9151de3895 generate identity for transient inproc connections 2010-06-17 11:01:18 +02:00
Brian Buchanan
ac90b7e0ba issue 35 - ZMQ_RCVMORE sometimes erroneously returns false 2010-06-11 08:03:34 +02:00
Martin Sustrik
8408ae066d LWM is computed rather than explicitly specified by user 2010-05-25 15:03:57 +02:00
Martin Sustrik
835e893e54 dispatcher_t class renamed to ctx_t 2010-05-05 14:24:54 +02:00
Martin Sustrik
fba28c7c0c issue 1 - Change zmq_term semantics 2010-04-11 16:36:27 +02:00
Martin Sustrik
00cf3ceb8d multi-part message functionality available via ZMQ_SNDMORE and ZMQ_RCVMORE 2010-04-11 10:26:47 +02:00
Martin Sustrik
716f4ac871 zmq_getsockopt function added 2010-04-09 13:04:15 +02:00
Martin Sustrik
2f219d7c28 ZMQ_TBC renamed to ZMQ_MORE 2010-03-27 21:25:40 +01:00
Martin Sustrik
842b4dd2e4 muti-part message functionality available via API 2010-03-27 14:57:56 +01:00
Martin Sustrik
61ad236e95 ZMQ_NOFLUSH and zmq_flush obsoleted 2010-03-13 14:40:10 +01:00
Martin Hurton
61ee6fae53 Implement flow control
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.
2010-03-12 11:07:38 +01:00
Martin Lucina
27e2d08449 Restructure language bindings
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
2010-03-11 20:33:27 +01:00
Martin Sustrik
d790940fd0 udp transport renamed to epgm 2010-03-09 18:14:49 +01:00
Martin Sustrik
aff1f6621a Merge branch 'master' of git@github.com:sustrik/zeromq2 2010-02-19 15:25:05 +01:00
Martin Sustrik
d008637bc4 one more attempt to fix the previous win32 problem 2010-02-17 21:16:59 +01:00
Martin Sustrik
e385319e5a recv returning -1 while errno=0 fixed 2010-02-17 20:33:00 +01:00
Martin Sustrik
b9caa319e2 Multi-hop REQ/REP, part XI., finalise the XREQ/XREP functionality 2010-02-16 18:30:38 +01:00
Martin Sustrik
43620b3d35 Multi-hop REQ/REP, part X., optional delayed creation of pipes during connect 2010-02-14 13:34:48 +01:00
Martin Sustrik
4405250d93 Multi-hop REQ/REP, part IX., pass the peer identity as far as socket_base_t 2010-02-13 15:30:03 +01:00
Martin Sustrik
f5ce81f289 Multi-hop REQ/REP, part VIII., new blob_t type used for holding identity 2010-02-13 14:07:30 +01:00
Martin Sustrik
cdc2efe9b5 Multi-hop REQ/REP, part VII., identity-related algorithms rewritten 2010-02-13 13:07:33 +01:00
Martin Hurton
dc8f4b1b76 Fix memory leak in bind() 2010-02-12 15:20:43 +01:00
Martin Hurton
cd7300fd4f Resolve command starvation in recv() 2010-02-12 12:53:19 +01:00
Martin Sustrik
427bc3276a minor code cleanup 2010-02-07 16:24:14 +01:00
Martin Sustrik
2bb57ac57a ZMQII-39: Implement IPC transport 2010-01-15 14:11:39 +01:00
Martin Sustrik
067ba3b9f7 ZMQII-34: ensure that poll won't return POLLIN event when the message will be filtered out anyway (POSIX) 2010-01-13 19:21:23 +01:00
Martin Sustrik
4f6baf4dde Copyrights transferred from FastMQ to iMatix 2010-01-05 08:29:35 +01:00
Martin Sustrik
72161fb075 format of subscriptions changed (no * needed anymore) 2009-12-28 21:29:31 +01:00
Martin Sustrik
aebff623f3 ZMQII-28: Bidirectional introduction on TCP connection establishment 2009-12-23 19:37:56 +01:00
Martin Sustrik
8aa0908635 all news converted to nothrow variant 2009-12-15 23:49:55 +01:00
Martin Sustrik
7146ef85e9 seqnum mechanism automated 2009-12-02 21:26:47 +01:00
Martin Sustrik
9bd309bda6 annoying optimisation in 'bind' command removed 2009-12-01 18:50:54 +01:00
Martin Sustrik
c41daca3da race condition in inproc transport shutdown fixed 2009-11-21 21:30:09 +01:00
Martin Sustrik
64634605b3 obsolete parameter removed from 'bind' command 2009-11-21 21:13:29 +01:00
Martin Sustrik
0e9ab2e8a3 inproc transport - initial commit 2009-11-21 20:59:55 +01:00
Martin Sustrik
cc631c4c66 ZMQII-18: Implement I/O multiplexing (first approximation) 2009-10-01 10:56:17 +02:00
malosek
cf6cc0128f pgm2 receiver working (partly) 2009-09-25 17:50:12 +02:00
malosek
33afdcd1ad added --with-pgm2 into build system 2009-09-24 12:43:35 +02:00
Martin Sustrik
e136d923b7 ZMQ-specific error codes added 2009-09-22 11:52:35 +02:00
Martin Sustrik
b15f695976 different fixes to req/rep 2009-09-21 17:20:13 +02:00
Martin Sustrik
cb1b6fe32c initial version of req/rep sockets 2009-09-21 14:39:59 +02:00
malosek
dffbdbb60c fixed compiler warning cast from uint64 to bool in socket_base.cpp 2009-09-17 11:31:28 +02:00
malosek
1b2a426656 c and cpp directories moved into bindings directory 2009-09-16 16:49:09 +02:00
malosek
03d494d4f0 added udp:// transport prefix for PGM UDP encapsulation 2009-09-16 15:36:38 +02:00
malosek
7a5db6041f added newly added socket options to all language bindings, P2P model changed to PUB/SUB for throughput tests 2009-09-16 12:22:36 +02:00
Martin Sustrik
9c522dccaf reconnect added to zmq_connecter 2009-09-16 11:02:18 +02:00
malosek
969522bbf5 added OpenPGM receiver - ZMQ_SUB 2009-09-16 10:11:01 +02:00
malosek
364281343c Merge branch 'master' of git@github.com:sustrik/zeromq2 2009-09-15 09:44:44 +02:00
malosek
bdf22e9c2f deleted useles iostream include from socket_base.cpp 2009-09-15 09:43:42 +02:00
Martin Sustrik
37cacc5700 ZMQII-1: Win32 - failure on shutdown 2009-09-14 12:28:13 +02:00
Martin Sustrik
c806aabb2d java binding sets socket options using setsockopt function 2009-09-14 11:25:57 +02:00
malosek
1a4d6f9119 added OpenPGM sender - ZMQ_PUB 2009-09-11 17:58:37 +02:00
Martin Sustrik
e940878b3f build on win32 fixed 2009-09-11 16:59:47 +02:00
Martin Sustrik
42ad2aa02d ZMQII-7: Pipe detach fails on shutdown 2009-09-11 15:51:35 +02:00
Martin Sustrik
b3f32e219e ZMQII-3: cheap and nasty implementation of message filtering 2009-09-10 12:00:47 +02:00
malosek
b71c3005e6 include directory split into c and cpp dirs, added --with-c and --with-cpp configure options 2009-09-07 17:06:47 +02:00
Martin Sustrik
4307baf7bc python binding functional 2009-09-04 16:02:41 +02:00
Martin Sustrik
4914e5c9d1 O(1) socket removal 2009-09-02 16:16:25 +02:00
Martin Sustrik
6a5120b1f1 python extension & perf tests 2009-09-02 10:22:23 +02:00
Martin Sustrik
cb09c6951e pipe deallocation added 2009-08-28 16:51:46 +02:00
Martin Sustrik
99c5d92836 pipes added 2009-08-27 10:54:28 +02:00
Martin Sustrik
6be4b01437 session management implemented 2009-08-21 14:29:22 +02:00
Martin Sustrik
a801b6d8b3 couple of bugs in shutdown mechanism fixed 2009-08-20 11:32:23 +02:00
Martin Sustrik
131f2e3096 subscribe API removed 2009-08-17 14:07:34 +02:00
Martin Sustrik
059beca59d listener/connecter/init/session added 2009-08-12 09:40:16 +02:00
Martin Sustrik
9f1f823b7b zmq_listener/zmq_connecter implemented 2009-08-09 16:12:09 +02:00
Martin Sustrik
3147ff8523 getsockopt implemented 2009-08-09 11:57:21 +02:00
Martin Sustrik
bde396f156 fix to 3-thread synchronisation algorithm 2009-08-09 11:21:47 +02:00
Martin Sustrik
5b5b513330 socket options interface modeled as in BSD sockets 2009-08-09 09:24:48 +02:00
Martin Sustrik
a8b410e66c lockfree interaction patter for 3 theads implemented 2009-08-08 16:01:58 +02:00
Martin Sustrik
0b5cc026fb clean up - session/socket/engine stuff removed 2009-08-06 12:51:32 +02:00
Martin Sustrik
cc3755a16f renamed from zs to zmq 2009-08-03 11:30:13 +02:00
Martin Sustrik
4ed70a9302 initial commit 2009-07-29 12:07:54 +02:00