Commit graph

954 commits

Author SHA1 Message Date
Jeroen Koekkoek
03c081fa18 Simplify os_getifaddrs operation for POSIX platforms
Signed-off-by: Jeroen Koekkoek <jeroen@koekkoek.nl>
2018-10-19 17:30:33 +02:00
Jeroen Koekkoek
7ba3bca087 Change socket function signatures to use os_sockaddr
* Consolidated and cleaned up some (duplicate) functions.
* Removed some unused functions that did not make sense to keep around.

Signed-off-by: Jeroen Koekkoek <jeroen@koekkoek.nl>
2018-10-19 17:00:15 +02:00
Jeroen Koekkoek
ea3f5e7ff4 Disable AF_PACKET interfaces for all platforms but Linux
Signed-off-by: Jeroen Koekkoek <jeroen@koekkoek.nl>
2018-10-19 16:58:40 +02:00
Jeroen Koekkoek
458b1df3f7 Replace os_sockQueryInterfaces by os_getifaddrs
Signed-off-by: Jeroen Koekkoek <jeroen@koekkoek.nl>
2018-10-19 16:58:40 +02:00
Jeroen Koekkoek
2fc4cac1a7 Consolidate some duplicate functions
Signed-off-by: Jeroen Koekkoek <jeroen@koekkoek.nl>
2018-10-19 16:58:40 +02:00
eboasson
2cee550f6f
Merge pull request #24 from eboasson/fix
More sensible domain id handling; stopping throughput publisher
2018-10-18 21:59:00 +08:00
Erik Boasson
d1c5cd9b57 set ^C handler just before writing samples and rely on default action to terminate the process when waiting a matching subscriber
Signed-off-by: Erik Boasson <eb@ilities.com>
2018-10-14 14:02:47 +08:00
Erik Boasson
bb92294f4e Let dds_create_participant determine domain id if config specifies "any" (new default)
Note: DDS_DOMAIN_DEFAULT with a configuration specifying "any" results in domain 0.
Signed-off-by: Erik Boasson <eb@ilities.com>
2018-10-14 14:02:47 +08:00
Benjamin Cabé
675fbfe013 Update README.md with proper project name.
Signed-off-by: Benjamin Cabé <benjamin.cabe@eclipse-foundation.org>
2018-09-25 11:06:04 +02:00
Erik Boasson
feb5ba647e handle threads stopping while trying to get a stack trace
Signed-off-by: Erik Boasson <eb@ilities.com>
2018-09-21 11:00:43 +02:00
Erik Boasson
30fe3dc803 disable multicast when selected interface doesn't support it
Signed-off-by: Erik Boasson <eb@ilities.com>
2018-09-21 11:00:43 +02:00
Erik Boasson
5edd55bc64 when closing trace file check for stdout or stderr
Signed-off-by: Erik Boasson <eb@ilities.com>
2018-09-21 11:00:43 +02:00
Erik Boasson
d76a537bb6 explicitly initialising all fields of struct msghdr instead of memset saves a noticeable amount of time
Signed-off-by: Erik Boasson <eb@ilities.com>
2018-09-21 11:00:43 +02:00
Erik Boasson
4f0b9cb471 improve performance by allowing multiple receive threads and avoiding multiplexing I/O
Signed-off-by: Erik Boasson <eb@ilities.com>
2018-09-21 11:00:43 +02:00
Erik Boasson
508d56b427 should not reschedule SPDP event if there is no SPDP writer
Signed-off-by: Erik Boasson <eb@ilities.com>
2018-09-21 11:00:43 +02:00
Erik Boasson
40f046ea3a switch to reporting (one-way) latency instead of round-trip times
Signed-off-by: Erik Boasson <eb@ilities.com>
2018-09-21 11:00:43 +02:00
Erik Boasson
098378cd89 fix roundtrip cleanup code trying to delete non-existent entities
Signed-off-by: Erik Boasson <eb@ilities.com>
2018-09-21 11:00:43 +02:00
Erik Boasson
e040d61246 transmit path should use unicast socket
Signed-off-by: Erik Boasson <eb@ilities.com>
2018-09-21 11:00:43 +02:00
Erik Boasson
cf754b0141 add one final trace line after DDSI stack shuts down
Signed-off-by: Erik Boasson <eb@ilities.com>
2018-09-21 11:00:43 +02:00
Erik Boasson
0873f4a401 use kqueue for input multiplexing on macOS
Signed-off-by: Erik Boasson <eb@ilities.com>
2018-09-21 11:00:43 +02:00
Erik Boasson
48d770d40f return false instead of crashing when invalid addresses are passed to ddsi_is_mcaddr/ddsi_is_ssm_mcaddr
Signed-off-by: Erik Boasson <eb@ilities.com>
2018-09-21 11:00:43 +02:00
Erik Boasson
bb8d3d808c remove some memsets for unnecessarily clearing padding
Signed-off-by: Erik Boasson <eb@ilities.com>
2018-09-21 11:00:43 +02:00
Erik Boasson
e84e644702 remove unused global mutex
Signed-off-by: Erik Boasson <eb@ilities.com>
2018-09-21 11:00:43 +02:00
Erik Boasson
9bd0a519fc default to a RelWithDebInfo build if cmake is invoked without setting CMAKE_BUILD_TYPE
Signed-off-by: Erik Boasson <eb@ilities.com>
2018-09-21 11:00:43 +02:00
Angelo Corsaro
2a67df48fc
Updated performance numbers. 2018-09-13 10:44:58 +02:00
Erik Boasson
b3bf57de00 fix incorrect warning fix in dds_entity_observer_unregister
Signed-off-by: Erik Boasson <eb@ilities.com>
2018-08-09 09:23:03 +02:00
Erik Boasson
b7487b18a6 stricter warning checks and the corresponding fixes
Signed-off-by: Erik Boasson <eb@ilities.com>
2018-08-09 09:23:03 +02:00
Erik Boasson
87e4780446 multicast group membership should be tracked on locators without take the port number into account
Signed-off-by: Erik Boasson <eb@ilities.com>
2018-08-09 09:23:03 +02:00
eboasson
39e5c1b709
Merge pull request #13 from k0ekk0ek/ci
Add support for automated builds using Travis CI and AppVeyor
2018-08-07 13:49:54 +02:00
Jeroen Koekkoek
ce748cb90b pass build config to CMake explicitly
Signed-off-by: Jeroen Koekkoek <jeroen@koekkoek.nl>
2018-08-07 10:56:21 +02:00
Jeroen Koekkoek
13e2e68b33 force Criterion to not run tests in parallel
Signed-off-by: Jeroen Koekkoek <jeroen@koekkoek.nl>
2018-08-06 16:13:05 +02:00
Jeroen Koekkoek
70f208cbd3 fix export of CYCLONEDDS_URI in test environment
Signed-off-by: Jeroen Koekkoek <jeroen@koekkoek.nl>
2018-08-06 15:10:29 +02:00
Jeroen Koekkoek
3752f93e78 remove debug message for Criterion_ddsc_config_simple_udp setup
Signed-off-by: Jeroen Koekkoek <jeroen@koekkoek.nl>
2018-08-06 15:10:23 +02:00
Jeroen Koekkoek
a7bd8f05aa use test environment set by add_criterion_executable for Criterion_ddsc_config_simple_udp test
Signed-off-by: Jeroen Koekkoek <jeroen@koekkoek.nl>
2018-08-06 15:10:16 +02:00
Jeroen Koekkoek
657325707c return early from os_reportExit if report stack is not initialized
Signed-off-by: Jeroen Koekkoek <jeroen@koekkoek.nl>
2018-08-06 15:10:10 +02:00
Jeroen Koekkoek
aa9947a320 add support for automated Windows builds with AppVeyor
Signed-off-by: Jeroen Koekkoek <jeroen@koekkoek.nl>
2018-08-06 15:10:04 +02:00
Jeroen Koekkoek
2374cd9f3c add support for automated Linux and macOS builds with Travis CI
Signed-off-by: Jeroen Koekkoek <jeroen@koekkoek.nl>
2018-08-06 15:09:51 +02:00
Jeroen Koekkoek
7147eac330 add shared library directory to PATH in test environment for Criterion_ddsc_config_simple_udp
Signed-off-by: Jeroen Koekkoek <jeroen@koekkoek.nl>
2018-08-06 15:09:33 +02:00
Jeroen Koekkoek
44ea435506 add support for Conan managed dependencies
Signed-off-by: Jeroen Koekkoek <jeroen@koekkoek.nl>
2018-08-06 15:09:24 +02:00
Jeroen Koekkoek
169b4129f0 set maximum timeout for tests to 10s
Signed-off-by: Jeroen Koekkoek <jeroen@koekkoek.nl>
2018-08-06 15:09:14 +02:00
Jeroen Koekkoek
977458c57a set DYLD_LIBRARY_PATH (macOS) and PATH (Windows) in test environment if linked against shared libraries
Signed-off-by: Jeroen Koekkoek <jeroen@koekkoek.nl>
2018-08-06 15:09:06 +02:00
Jeroen Koekkoek
085985dce7 add support for CUnit versions less than 2.1-3
Signed-off-by: Jeroen Koekkoek <jeroen@koekkoek.nl>
2018-08-06 15:08:54 +02:00
Erik Boasson
6ab48746c5 fix win64 compilation warnings
Signed-off-by: Erik Boasson <eb@ilities.com>
2018-08-03 11:32:08 +02:00
Erik Boasson
e062da6798 rework roundtrip to print 99 percentile & max and to optionally use listeners
Signed-off-by: Erik Boasson <eb@ilities.com>
2018-08-03 11:32:08 +02:00
Erik Boasson
5c0bdddc2a clean up unused variables/functions
Signed-off-by: Erik Boasson <eb@ilities.com>
2018-08-03 11:32:08 +02:00
Erik Boasson
28c2dd2198 remove superfluous lock from dds writer
Signed-off-by: Erik Boasson <eb@ilities.com>
2018-08-03 11:32:08 +02:00
Erik Boasson
61d98b46a6 abstract WHC and pull it out of core DDSI code
Signed-off-by: Erik Boasson <eb@ilities.com>
2018-08-03 11:32:02 +02:00
Erik Boasson
37953f5c49 initial support for OpenIndiana
Signed-off-by: Erik Boasson <eb@ilities.com>
2018-08-02 12:53:36 +02:00
Erik Boasson
52918b3003 Fix setting of IPv6 multicast address for join/leave multicast group
Signed-off-by: Erik Boasson <eb@ilities.com>
2018-08-02 12:45:07 +02:00
Erik Boasson
296ef4de7d explicitly enable batching in pubsub
Automatic batching is not yet implemented but: it dramatically enhances performance in throughput tests, and enabling it in the config breaks manual publication of data in pubsub. For the time being, it makes more sense to enable manual batching programmatically and force the data out when needed.

Signed-off-by: Erik Boasson <eb@ilities.com>
2018-08-01 09:05:00 +02:00