Skip to content

v2.9.0

Compare
Choose a tag to compare
@JLBuenoLopez JLBuenoLopez released this 13 Dec 15:08

Fast DDS v2.9.0

This minor release includes several new features (new log macros to avoid conflicts with external libraries), behavior change (default memory management policy is no longer PREALLOCATED_MEMORY_MODE, enable by default Fast DDS Statistics module but only taking statistics metrics if the corresponding Statistics DataWriter is enabled), performance improvements, CI improvements (including address sanitizer jobs), and several bug fixes.

Mind that, even though this release is API compatible with previous v2.x versions, it is NOT ABI compatible with previous versions.
This means that applications upgrading Fast DDS to v2.9.0 will require recompilation, though not source code modification.

It is also advisable to regenerate the type support from the IDL files using Fast DDS-Gen v2.3.0.
Furthermore, if upgrading to v2.9.0, it is also recommended to upgrade Fast CDR to v1.0.26

New features

  1. New log macros EPROSIMA_LOG_INFO, EPROSIMA_LOG_WARNING and EPROSIMA_LOG_ERROR (#3107)
  2. Add ENABLE_OLD_LOG_MACROS CMake option to support disabling the compilation of previous log macros (#3107)

Behavior changes

  1. Default memory management policy set to PREALLOCATED_WITH_REALLOC_MEMORY_MODE (#3108)
  2. Statistics metrics are only calculated/accumulated when their corresponding DataWriter is enabled in Fast DDS Statistics Module (#3109, #3146)
  3. Enable FASTDDS_STATISTICS CMake option by default (#3135)

Improvements

  1. CI improvements
    1. Add address sanitizer job for Fast DDS library (#3084)
    2. Add address sanitizer job for Discovery Server test suite (#3084, #3070)
  2. Upgrade Fast CDR submodule (#3143)

Fixes

  1. Synchronization fixes:
    1. Fix deadlock when removing remote DomainParticipants by expired liveliness when using Security (#3102)
    2. Protect DomainParticipant::set_listener avoiding null reference (#3089)
    3. Fix data race on WriterProxy::stop while TimedEvent is being triggered (#3031)
    4. Protect creation/destruction of Boost's named_mutex (#3104)
  2. CI fixes:
    1. Fix Statistics Module test suite (#3094, #3110, #3122)
    2. Fix recurring data races in test suite (#3103)
    3. Fix thread sanitizer job keeping Ubuntu 20.04 (#3145)
  3. Other:
    1. Fix Topic creation when registering a type name different from the internal TypeSupport name (#3096)
    2. Fix communication with asymmetric ignoreParticipantFlags (#3105, #3114)
    3. Several dependencies fixes upgrading to Ubuntu 22.04 (#3078)
    4. Disable error logged when DomainParticipant profile is not found (#3120)
    5. Fix CMake for Fast DDS use as submodule (#3136, #3148)
    6. Upgrade internal type supports generated with Fast DDS-Gen v2.3.0 (#3140, #3147)
    7. Other minor fixes (#3125, #1781)

PRs in merge order:
#3084, #3099, #3096, #3094, #3105, #3114, #3102, #3110, #3101, #3108, #3109, #3107, #3122, #3103, #3078, #3120, #3136, #3125, #3135, #1781, #3143, #3140, #3145, #3146, #3147, #3089, #3097, #3070, #3104, #3148, #3149