Alexey Rybalchenko
e1a113aabe
Add region events subscriptions
2020-04-28 14:09:04 +02:00
Alexey Rybalchenko
a545bee3b1
Do not report interruption by system call as error
2020-03-02 13:42:37 +01:00
Alexey Rybalchenko
a2cff5b7bb
Shmem: simplify message/socket and refactor to use namespaces
2019-12-20 14:04:58 +01:00
Alexey Rybalchenko
a53e95b5f6
Add flatbuffers-based command format to SDK/plugin
2019-09-30 12:18:49 +02:00
Alexey Rybalchenko
5c943bbedb
Add debug output
2019-07-11 18:58:46 +02:00
Alexey Rybalchenko
cba6d19781
Add config plugin class.
2019-07-10 19:35:18 +02:00
Alexey Rybalchenko
0e35f1cb22
Shmem region: support huge pages via path to hugetlbfs mount
2019-07-05 15:58:28 +02:00
Alexey Rybalchenko
36f409dc72
Formatting
2019-02-25 12:19:50 +01:00
Alexey Rybalchenko
ee24144d61
Remove previously deprecated Copy method (since 1yr)
2018-11-28 21:16:29 +01:00
Alexey Rybalchenko
a9619a06d0
Add test for FairMQMessage::Rebuild
2018-11-28 21:16:29 +01:00
mkrzewic
cc0c525e0d
Set pointer to factory also when receiving multi-part
2018-11-27 14:36:35 +01:00
Alexey Rybalchenko
25fcf13985
Move Bind/Connect/Attach to FairMQChannel
2018-11-13 11:08:48 +01:00
mkrzewic
d40bbfe208
Equip FairMQMessage with pointer to factory (at creation)
...
the patch seems big but most of it is just propagating the new notion of
constness of the factory - since it keeps track of created messages with
the internal allocator it no longer is const
2018-10-31 13:12:38 +01:00
Alexey Rybalchenko
0cfa9192d7
Deprecate Send-/ReceiveAsync, use timeout variant instead
2018-10-30 10:39:35 +01:00
Alexey Rybalchenko
ce4062f3a0
Remove GetSocket interface that exposes transport details
2018-10-17 13:28:50 +02:00
Alexey Rybalchenko
f8824335a5
Add setters/getters for socket options
2018-10-17 13:28:50 +02:00
Alexey Rybalchenko
dfa1b68867
Make factory classes final (optimization potential)
2018-10-17 13:28:50 +02:00
Alexey Rybalchenko
44acd4997d
Implement nanomsg linger in our transport
2018-10-17 13:28:50 +02:00
Alexey Rybalchenko
cfb727181f
Remove set/get timeout from general socket interface
2018-10-12 20:29:50 +02:00
Alexey Rybalchenko
e1f555bc05
Fix issues found by Codacy
2018-10-08 17:20:02 +02:00
Alexey Rybalchenko
b814e40c87
Fix multipart transfer timeout and enable its tests
2018-08-27 18:12:02 +02:00
Alexey Rybalchenko
1554c1c273
Change missing options in transport from warning to debug
...
Transport has meaningful defaults if FairMQProgOptions is missing
2018-06-13 18:03:16 +02:00
Alexey Rybalchenko
e4c349888d
Improve compilation speed
2018-05-17 16:32:49 +02:00
Alexey Rybalchenko
7a4fd96b27
Fix namespaces in Transports.h and add conversion map
2018-05-15 19:18:11 +02:00
Alexey Rybalchenko
fed7601be4
replace cmd socket with transport specific unblock mechanism
2018-03-26 13:58:20 +02:00
Dennis Klein
3670dd8835
FairMQ: Remove unused Attach method and unused socket flags
2018-03-26 13:58:20 +02:00
Alexey Rybalchenko
a3393e600e
convert log severities use to lowercase and remove use of MQLOG
2018-01-16 22:53:26 +01:00
Alexey Rybalchenko
b59f1b950d
FairMQ: Add hint argument to the region callback, settable per message.
2017-12-18 12:53:58 +01:00
Alexey Rybalchenko
ba78964e29
FairMQ: add FairMQMessage::Copy(const FairMQMessage& msg), deprecate the old one.
2017-12-10 17:37:53 +01:00
Alexey Rybalchenko
ea7ae3ded9
remove Get/SetMessage from interface (internal transport detail)
2017-12-10 17:37:53 +01:00
Alexey Rybalchenko
e5aa85b61d
FairMQ: Add functionality to set used message size
2017-12-10 17:37:53 +01:00
Mohammad Al-Turany
b5e32403ea
correct typo in copyright section
2017-11-29 13:11:35 +01:00
Alexey Rybalchenko
58a312b730
FairMQ: Introduce callbacks for the FairMQUnmanagedRegion.
...
Callbacks are called when the data buffer of the message assiciated
with the corresponding region is no longer needed by the transport.
Example in examples/advanced/Region/
2017-11-29 09:06:17 +01:00
Alexey Rybalchenko
0bb866ff36
FairMQ: shared memory unmanaged region updates:
...
- use same mapping for sender/receiver (created/remote) region.
- rename FairMQRegion -> FairMQUnmanagedRegion.
2017-10-20 14:17:15 +02:00
Alexey Rybalchenko
2db114bc5c
Eliminate warnings in FairLink and FairMQ Plugins.
2017-10-05 15:32:12 +02:00
Alexey Rybalchenko
221d2567f0
FairMQRegion and examples/advanced/Region
2017-08-08 14:18:10 +02:00
Dennis Klein
8bc21675af
Refactor TransportFactory to RAII
...
* Remove explicit Initialize and Terminate states,
map them onto ctor/dtor
* Remove no longer needed Shutdown state
* Remove deprecated SetTransport()
2017-05-24 16:37:33 +02:00
Alexey Rybalchenko
6b221d950c
Add NewPoller() wrapper.
2017-05-23 08:32:13 +02:00
Dennis Klein
3be2f297f3
generate id if no device id available
...
* CreateSocket factory no longer accepts id param, but the
TransportFactory has an id member instead
2017-05-18 20:01:44 +02:00
Dennis Klein
3205e0c378
refactor to more idiomatic RAII
...
* FairMQTransportFactoryZMQ: move the config invariant
initialization to ctor
* FairMQChannel: add new ctor that creates usable channel
* FairMQSocket*: close sockets in dtor
* FairMQTransportFactory*: terminate context in dtor
* FairMQChannel: add Bind/Connect facades (for explicit control, e.g. timing)
2017-05-18 20:01:44 +02:00
Alexey Rybalchenko
0926a9a764
FairMQ: allow accumulation of parts on receive.
2017-04-28 13:30:51 +02:00
Dennis Klein
a1fe478ce7
fix more -Winconsistent-missing-override warnings
2017-04-20 11:07:50 +02:00
Alexey Rybalchenko
c51575f88c
fix clang++ -Winconsistend-missing-override warnings
2017-04-20 11:07:50 +02:00
Alexey Rybalchenko
5aaf27bf02
Refactor the transport interface
...
- give transport Initialize() method with access to device config.
- avoid using global context in the transport.
- simplify shutdown procedure (no need for extra thread).
2017-04-20 11:07:49 +02:00
Alexey Rybalchenko
3c73c690f7
Transports: use transportType as static member.
2017-03-14 17:51:26 +01:00
Alexey Rybalchenko
2293c5e417
FairMQChannel: API to access socket metrics; make fSocket private.
2017-03-14 17:51:26 +01:00
Giulio Eulisse
2a72d58766
Remove unneeded if when deleting NULL / 0 / nullptr
...
C++ standard dictates that NULL / 0 / nullptr is a valid argument for
delete which then simply has no effect:
"The value of the first argument supplied to a deallocation function may
be a null pointer value; if so, and if the deallocation function is one
supplied in the standard library, the call has no effect."
I therefore think in these particular case it's safe to remove the ifs.
2017-03-13 15:46:56 +01:00
Alexey Rybalchenko
c66fd6fe91
Adding multiple transports support & other fixes:
...
- Avoid polling when only one input channel is used.
- Send only handles for shared memory transport.
- Avoid waiting in the rate logger thread when nothing to log.
- Hide warnings from generated files
- Fix #483
2017-02-23 06:47:09 +01:00
Alexey Rybalchenko
3e7cb85816
Fix incorrect calculation of transfer rate for multipart.
2017-02-23 06:47:09 +01:00
Alexey Rybalchenko
8cf1cbb930
Initialize shared memory only if it is used.
2017-02-23 06:47:09 +01:00