Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Release 1.8.1 [5693] #574

Merged
merged 17 commits into from
Jun 28, 2019
Merged

Release 1.8.1 [5693] #574

merged 17 commits into from
Jun 28, 2019

Conversation

MiguelCompany
Copy link
Member

@MiguelCompany MiguelCompany commented Jun 26, 2019

This PR:

  • Fully implements Liveliness QoS
  • Adds some regression tests
  • Fixes some data races
  • Fixes issues when closing participants
  • Improves fastrtpsgen

Luis Gasco and others added 14 commits May 31, 2019 12:37
* Refs #5313 Fix lroundl error on Windows.

* Refs #5505 Sugested changes

* Refs #5505 Removed unnecessary parenthesis and clang warnings.
* Refs #5486. First tests for ReaderHistory

GetRepeatedSequenceNumber test will fail until the bug is fixed

* Refs #5486. Added more tests for ReaderHistory

GetChange test will fail until the bug is fixed

Also fixed a bug in ReaderHistory::remove_changes_with_guid function. The comparison between writerGUIDs was wrong. operator == is used instead.

* Refs #5486. Fixed memory leaks

* Refs #5486. Fixed Windows warnings

* Refs #5486. Code Style

* Refs #5486. Fixed Mac Warning

* Refs #5486. Fixed Mac Warning

* Refs #5486. Removed set_reader function from ReaderHistory. Added new constructor to the StatefulReader mock instead.

* Refs #5486. Added default constructors

* Refs #5486. Removed code needed

* Refs #5486. Fix error in RTPSReader mock (security did not pass)
* Refs #5458. Fixing data race on UDPTransportInterface.

* Refs #5458. Fixing timeouts on Mac.

* Refs #5458 Fixing data race on ReceiverResource dtor.

* Refs #5458 Clang-tidy warnings

* Refs #5458 Fixing Mac timeout.

* Refs #5458 Fixing valgrind invalid read.

* Refs #5458 Requested changes.

* Refs #5458 Fixing situation when socket doesn't close nicely.

* Refs #5458 Trying to fix Mac issue.

* Refs #5458 Trying to fix Mac issue.

* Refs #5458 Trying to fix Mac issue.

* Refs #5458 Fixed Mac issue.

* Refs #5458 Avoid loop when multicast. Much lesser wait time until continue.

* Refs #5458 Requested changes.
* Refs #5551. First tests for CacheChangePool

* Ignoring files for Eclipse and Visual Studio Code

* Refs #5551. Tests for reserve_Cache function

* Refs #5551. Improved tests for reserve_Cache function. Deleted CacheChangePoolAttributes, it uses a tuple and the Combine method instead.

* Refs #5551. Added two more tests for CacheChangePool
Checks the initialized status of a reserved cache_changed
Checks the size of allChanges and freeChanges vectors

* Refs #5552. Blackbox run with prealloc memory mode only

* Refs #5552. Fixed certificate xml files and regenerated smime files
Also fixed bug in BlackboxTestsPersistence. Byte for Prealloc Memory Mode is '3'

* Refs #5551. Fixed gtest comparisons between signed and unsigned types
Replaced EXPECT with ASSERT

* Refs #5551. Fixed Instanciation tests for Mac
* Refs #5453 Adding a test for discovery with thirty participants

* Refs #5453 Updating the test to check for matched readers/writers

* Refs #5453. Added test for multiple participants with multiple topics.

* Refs #5479. Fixing warnings on Mac.

* Refs #5479. Changed test to fail by timeout pattern.

* Refs #5479. Taking removal and unmatching into account.

* Refs #5479. Styling and no copy.

* Refs #5479. Fixing valgrind.

* Refs #5479. Avoiding possible port collisions.

* Refs #5479. Removing debug print methods.

* Refs #5479. Adding debug messages to persistence tests.

* Refs #5479. Closing participants.

* Refs #5479. Adding more info to persistence tests.

* Refs #5479. Fix build errors after rebase.

* Refs #4579. Addressing review comments.
#556)

* Log error when default profiles xml loads with error + unittest

* More verbose error

* log opening error also when the file is DEFAULT_FASTRTPS_PROFILES

* combine xml loading and error checking
* Refs #5693. Updating idl and fastcdr submodules

* Refs #5697. Targetting java 1.8

* Refs #5697. Adding linter options.

* Refs #5697. Fixing warnings.
* Refs #5714. Added unit test.

* Refs #3463. On releasing UDP resources, if the closing of the UDP fails 10 times, shut it down manually.

* Refactor without sending close message

* Refs #5714 remove UDPTransportInterface::ReleaseInputChannel

* Wait until the UDPChannelResource::perform_listen_operation has joined before deleting the channel resource

* Refs #5714 Simplify channel resource release mechanism. Eliminates condition variable and mutex
* Refs #5183 Adding C++ example of liveliness with one AUTOMATIC publisher

* Refs #5183 Extending C++ examples to allow using a participant with two publishers

* Refs #5183 Extending C++ example to allow configuration of liveliness kind

* Refs #5060 Format changes only

* Refs #5060 Removing WriterProxyLiveliness and adding new classes

* Refs #5060 Adding liveliness manager to RTPSReader and WLP

* Refs #5060 Removing liveliness information from WriterProxyData

* Refs 5060 Adding functionality to liveliness manager + unit tests

* Refs #5060 Adding liveliness methods at the reader-writer layer

* Refs #5060 Updating WLP so that it invokes writer listener when liveliness of writer is lost

* Refs #5060 Adding callbacks to pub-sub layer

* Refs #5060 Implementing getters for liveliness status

* Refs #5060 Changes to implement assert_liveliness() method

* Refs #5060 Adding option to liveliness manager to exclude automatic writers

* Refs #5060 Fixing WLP so that liveliness manager is created when WLP is initialized

* Refs #5060 Fixing WLP so that liveliness manager is created when WLP is initialized. Also liveliness is not changeable

* Refs #5060 Changes to WLP to make AUTOMATIC (writer) - AUTOMATIC (reader) work

* Refs #5060 Changes to WLP to make MANUAL_BY_PARTICIPANT (w) - MANUAL_BY_PARTICIPANT (r) work

* Refs #5060 Changes to WLP to make MANUAL_BY_TOPIC (w) - MANUAL_BY_TOPIC (r) work

* Refs #5060 Changes to stateless reader and writer

* Refs #5060 Implementing assert_liveliness method

* Refs #5060 Changes to allow different liveliness kinds between writer/reader

* Refs #5060 Combining some blackbox tests

* Refs #5060 Code clean-up

* Refs #5060 Testing more than one pub/sub in the same participant

* Refs #5060 Code clean up

* Refs #5060 Fixing deadlock

* Refs #5060 More code clean up

* Refs #5060 Trying to fix builds

* Refs #5060 Trying to fix build of tests

* Refs #5060 Fixing error message that shouldn't be logged

* Refs #5060 Fixing warnings and trying to make tests for stable when running valgrind

* Refs #5060 Addressing review comments

* Refs #5060 Adding a python test for automatic liveliness

* Refs #5058 Fixing windows builds

* Refs #5060 Fixing mac warnings

* Refs #5060 Fixing mac build

* Refs #5060 Fixing failing test on mac

* Refs #5060 Trying to make some tests more stable when using valgrind

* Refs #5060 Trying to make tests more stable by using condition variables

* Refs #5060 Resolving remaining review comments

* Refs #5060 Making some tests more stable on windows

* Refs #5060 Fixing remaining tabs

* Refs #5060 Fixing mac warning

* Refs #5060 Making some ests more stable on mac

* Refs #5060 Trying to fix remaining test that is failing on mac

* Refs #5060 Removing asserts and letting timers manage non-positive intervals

* Refs #5060 Adding explanation about non-positive intervals
@raquelalvarezbanos
Copy link
Contributor

raquelalvarezbanos commented Jun 26, 2019

Running tests manually:

python3 buildcop.py --ci-repo https://gitlab.intranet.eprosima.com/eProsima/fastrtps-ci.git --source-branch  release/1.8.1 --target-branch master --build-args --mixin rel-with-deb-info --event-handlers console_cohesion+ console_package_list+ --packages-up-to fastrtps --cmake-args -DSECURITY=ON --- --test-args --packages-up-to --ctest-args --timeout 300

Summary:

Platform Security Test failures # Failures Failure type
Ubuntu ON BlackBox.EndpointRediscovery_2 1 out of 10 Timeout
AutomaticLivelinessAssertion 1 out of 10 Timeout
Ubuntu OFF AutomaticLivelinessAssertion 1 out of 10 Timeout
Mac ON - 0 out of 10 -
Mac OFF

@nuclearsandwich
Copy link
Contributor

I've started a full ROS 2 CI run. This does not include the changes to remove the Not Implemented Errors for liveliness QoS in rmw_fastrtps. @emersonknapp is looking into getting a PR open for that and then we'll test that as well.

  • Linux Build Status
  • Linux-aarch64 Build Status
  • macOS Build Status
  • Windows Build Status

@emersonknapp
Copy link

@nuclearsandwich see ros2/rmw_fastrtps#296

And my latest comment here #503 (comment), the Participant::assert_liveliness API has not been added, as far as I can see

@emersonknapp
Copy link

@MiguelCompany should we expect the Participant::assert_liveliness API in this release? If not, is it planned for future work? Thanks!

* Refs #5765 Adding a test

* Refs #5765 Fix for liveliness changed status

* Refs #5765 Adding more tests

* Refs #5765 Addressing some review comments

* Refs #5765 Adding indentation
@MiguelCompany MiguelCompany added this to the v1.8.1 milestone Jun 28, 2019
@MiguelCompany
Copy link
Member Author

should we expect the Participant::assert_liveliness API in this release?

It has been added on #579. Should be working as it just consists of calling the appropriate internal method

@raquelalvarezbanos
Copy link
Contributor

raquelalvarezbanos commented Jun 28, 2019

Build & tests:

Platform Security Test failures # Failures Failure type
Ubuntu ON - 0 out of 5 -
Mac ON SimpleCommunicationSecureBestEffort 1 out of 5 Timeout
Windows (2015) ON - 0 out of 5 -
Windows (2017) ON - 0 out of 5 -

@raquelalvarezbanos raquelalvarezbanos merged commit 0835a86 into master Jun 28, 2019
@raquelalvarezbanos
Copy link
Contributor

Merging, as failing test is known to fail some times.

@richiware richiware deleted the release/1.8.1 branch November 21, 2019 08:47
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

7 participants