-
Notifications
You must be signed in to change notification settings - Fork 398
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
iox-#1030 Speed up posh tests #2020
iox-#1030 Speed up posh tests #2020
Conversation
3e01763
to
41f596b
Compare
41f596b
to
f350e44
Compare
} | ||
|
||
void PortManager::removePublisherFromServiceRegistry(const capro::ServiceDescription& service) noexcept | ||
{ | ||
m_serviceRegistry.removePublisher(service); | ||
publishServiceRegistry(); |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Oh boy, I remember the bikeshedding regarding the right (i.e. fastest) data structure for the ServiceRegistry
well enough but it seems after the implementation nobody bothered to look at the slow tests with flamegraph to discover that there is something an order of magnitude slower than the most naive data structure one can use. This is a prime example why one should measure first and then optimize the bottleneck.
391c774
to
cf147ea
Compare
Codecov Report
@@ Coverage Diff @@
## master #2020 +/- ##
==========================================
- Coverage 74.27% 74.24% -0.04%
==========================================
Files 413 413
Lines 16055 16150 +95
Branches 2246 2257 +11
==========================================
+ Hits 11925 11990 +65
- Misses 3411 3434 +23
- Partials 719 726 +7
Flags with carried forward coverage won't be shown. Click here to find out more.
... and 4 files with indirect coverage changes 📢 Have feedback on the report? Share it here. |
589be6f
to
ff0080e
Compare
ff0080e
to
68aa108
Compare
…e 'waitForRoudi' loop
…the intropsection mempools
9488a2a
to
e5ee364
Compare
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I'm not finished with the review yet, will continue later.
iceoryx_posh/test/moduletests/test_roudi_iceoyx_roudi_memory_manager.cpp
Show resolved
Hide resolved
iceoryx_posh/test/moduletests/test_roudi_iceoyx_roudi_memory_manager.cpp
Outdated
Show resolved
Hide resolved
…t RouDi shutdown
I think I found the reason (or at least one) for sporadic failures of the integration tests. It seems there was a race between launch_testing and RouDi trying to terminate the applications. I fixed the issue at the cost of additional 200 lines to review. |
4852734
to
e0e0835
Compare
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
@elBoberido LGTM, thanks for the PR!
One wish: Could we please move the C binding move to another repository before the v3.0
C release like we did with the other optional bindings? This PR would have been much smaller and I prefer reviewing things step-by-step. Also, like with the other bindings we only have to update them if there is a need and only once after the release.
Regarding ROS 2: IMO this should stay on v2.0.3
even after v3.0
was released, so we don't have to implement any changes in Cyclone DDS.
Shall I create an issue for that?
cc @dkroenke
@mossmaurice I would keep the bindings for the v3 release and only move them afterwards. In general it does not cost us much and especially if we agree on the reduced scope of the v3 release it would not be much extra work. It might even be less work than to remove them. At least from some comments in some issues I have the feeling some people are using Cyclone DDS with the latest iceoryx master and for them it would be nice to have the bindings in the v3 release. Doing the move right after the v3 release would also result in a better transition path for these users. cc @dkroenke |
@elBoberido That makes sense to me. Could please still create the issue for the move to a separate repository and assign it to the |
@mossmaurice done with #2030 |
Pre-Review Checklist for the PR Author
iox-123-this-is-a-branch
)iox-#123 commit text
)task-list-completed
)iceoryx_hoofs
are added to./clang-tidy-diff-scans.txt
Notes for Reviewer
This PR reduces the test time by more than two minutes. Some CI jobs are now even four minutes faster compared to the latest master build.
This is also getting a bit out of hand since the faster shutdown of RouDi uncovered some issues in the examples which happened previously only sporadically.
Checklist for the PR Reviewer
iceoryx_hoofs
have been added to./clang-tidy-diff-scans.txt
Post-review Checklist for the PR Author
References