Dennis Klein
4b6cf8b181
Fix aggregate initialization issue before C++20
...
Use value initialization to prevent
error: temporary of type ... has protected destructor
see https://stackoverflow.com/a/56745475
2021-03-26 10:06:10 +01:00
Alexey Rybalchenko
bffe74c5cf
shm: handle shrink failure gracefully
2021-03-23 13:00:35 +01:00
Alexey Rybalchenko
62438bd99e
shm: Improve error message when segment cannot be opened
2021-03-18 09:02:08 +01:00
Alexey Rybalchenko
c8ad684b18
Add --shm-no-cleanup option
...
When true, device will skip the segment cleanup even when it is the last
segment user
2021-03-18 09:02:08 +01:00
Alexey Rybalchenko
1f26883b75
Formatting
2021-03-11 12:14:00 +01:00
Alexey Rybalchenko
edbdc57332
shm: make shmId also available as uint64_t
2021-03-11 12:14:00 +01:00
Alexey Rybalchenko
0fd2fcadc2
shm: Make sure no event notifications are missed
2021-03-11 12:14:00 +01:00
Alexey Rybalchenko
9b48b31a75
shm: Make sure all region events are fired
2021-03-11 12:14:00 +01:00
Alexey Rybalchenko
93dff3c5a7
Fix regression in shmmonitor
2021-02-19 09:54:29 +01:00
Alexey Rybalchenko
2b3e38d9a4
shmmonitor: non-interactive mode checks and quits
2021-02-10 10:36:08 +01:00
Alexey Rybalchenko
c6b13cd3a1
Fix shmem::Message::SetUsedSize(0)
2021-01-25 13:46:40 +01:00
Alexey Rybalchenko
4a09154a91
17-ify namespaces
2021-01-25 13:46:40 +01:00
Alexey Rybalchenko
d9a5e82160
Cleanup tools includes
2021-01-25 13:46:40 +01:00
Alexey Rybalchenko
751c53171c
Replace tools::make_unique with std::make_unique
2021-01-25 13:46:40 +01:00
Alexey Rybalchenko
6815c9c172
zmq: implement alignment
2021-01-13 12:36:32 +01:00
Alexey Rybalchenko
02a3980343
Remove useless parameter from implementation
2021-01-13 12:36:32 +01:00
Alexey Rybalchenko
29f45fa77d
Rename TransferResult to TransferCode
2021-01-13 12:36:32 +01:00
Alexey Rybalchenko
f46d446d52
shm: do mlock/zeroing under shmem lock
2020-12-04 13:27:45 +01:00
Alexey Rybalchenko
db0937f339
shm: ensure local segments are complete for region subscriptions
2020-11-25 13:41:23 +01:00
Alexey Rybalchenko
bb1ce794b6
Let single message methods also return int64_t
2020-11-17 14:04:20 +01:00
Alexey Rybalchenko
6699711e17
FairMQChannel: Refactor, moving short methods to header
2020-10-06 16:17:37 +02:00
Alexey Rybalchenko
d03a504ccd
shmem: fail earlier if given an unsupported socket type
2020-10-06 16:17:37 +02:00
Alexey Rybalchenko
6932f88c84
Adjust transfer methods behaviour when interrupted
...
A transer is attempted even if the transport has been interrupted
(with a timeout). When the timeout is reached, transfer methods will
return TransferResult::interrupted (-3).
2020-09-16 15:43:58 +02:00
Alexey Rybalchenko
fdbf289364
Update monitor & debug tools for multiple segments
2020-09-08 16:56:35 +02:00
Alexey Rybalchenko
266843cda5
Shm: initial multiple segments support
2020-09-08 16:56:35 +02:00
Alexey Rybalchenko
b126ede45a
Shm: Verbosity switch for Cleanup methods
2020-09-08 16:56:35 +02:00
Alexey Rybalchenko
73109fe6d3
Shm: configurable allocation strategy
2020-09-08 16:56:35 +02:00
Alexey Rybalchenko
3b2d2a0ac8
Shm: Refactor to localize segment access
2020-09-08 16:56:35 +02:00
Alexey Rybalchenko
72a45f78b3
Shm: Add Monitor::GetDebugInfo()
2020-09-08 16:56:35 +02:00
Alexey Rybalchenko
b63f31d0e0
Shm: Provide debug infos only in debug mode
2020-09-08 16:56:35 +02:00
Alexey Rybalchenko
70a583d08d
Shm: Provide segment/msg debug infos
2020-09-08 16:56:35 +02:00
Alexey Rybalchenko
690e8a0370
Retry on EINTR in blocking zmq calls
2020-08-28 18:22:03 +02:00
Alexey Rybalchenko
62ed4e5f80
Avoid unconditional call to now() when allocating message
2020-08-13 14:16:12 +02:00
neskovic@gmail.com
f1d6b18668
Message counter: use relaxed/acquire memory ordering
2020-08-13 11:49:55 +02:00
Alexey Rybalchenko
c0153a6b55
shmMonitor: Adjust output slightly
2020-08-07 14:27:14 +02:00
Alexey Rybalchenko
86a1dd38a2
ShmMonitor: Use FairLogger for timestamp calculation
2020-08-07 14:27:14 +02:00
Alexey Rybalchenko
b0f73017e2
shmmonitor: add output with -v (non-interactive)
2020-08-06 12:24:01 +02:00
Alexey Rybalchenko
b83655d5da
MessageBadAlloc: report amount of available memory
2020-08-06 12:24:01 +02:00
Alexey Rybalchenko
65f9519917
Add error handling for mlock
2020-08-06 12:24:01 +02:00
Alexey Rybalchenko
3eca8e9def
Add test for shm transport options
2020-07-15 13:59:53 +02:00
Alexey Rybalchenko
beb7766fca
Shm: add options to zero and/or mlock the segment
2020-07-15 13:59:53 +02:00
Giulio Eulisse
e8cc104344
Add API to extract ZMQ_EVENTS from socket backend
2020-07-15 12:09:54 +02:00
Alexey Rybalchenko
78b1c188bf
Shm: report correct size when opening segment
2020-06-30 20:58:53 +02:00
Alexey Rybalchenko
88bc1f7a06
Shm: throw if requested message size exceeds total segment size
2020-06-30 20:58:53 +02:00
Alexey Rybalchenko
8125489776
Handle out_of_range when locating RegionInfo
2020-06-29 14:44:49 +02:00
Alexey Rybalchenko
6dd0a44308
Make shmid an 8-digit hex number
2020-06-29 14:44:49 +02:00
Alexey Rybalchenko
aeab9e5407
Socket.h: refactor to reduce duplicate code
2020-06-29 14:44:49 +02:00
Alexey Rybalchenko
539e5602a6
Expose fair::mq::shmem::Monitor::Cleanup() API
2020-06-29 14:44:49 +02:00
Alexey Rybalchenko
f885b4618e
Optimize unmanaged region ReceiveAcks
2020-06-29 14:44:49 +02:00
Alexey Rybalchenko
3364da9541
Add linger setting for unmanaged region
2020-06-29 14:44:49 +02:00