-
Notifications
You must be signed in to change notification settings - Fork 387
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
Prevent race condition in TFClient #489
Prevent race condition in TFClient #489
Conversation
@jorgenfb, could we create a test, which fails in the old situation, but works with the fix? |
9f2d53e
to
a68ceab
Compare
If a TFClient is disposed while a service call to update the goal is ongoing it will subscribe to the republished topic even if noone is listening.
a68ceab
to
54f88b0
Compare
I have added a tests that fails without my fix and also rebased on develop. |
The
edit: I didn't build yet. The |
@jorgenfb I didn't compile yet. Which caused the |
Hi Matthijs! Can you please check locally again. I don't see why this test would be flaky, I have gone through the logic, and it is pretty simple. I just reverted my fix, without removing the test, and the CI clearly fails now. I have also tried running this on my machine: docker build --build-arg ROS_DISTRO=melodic --build-arg NODE_VERSION=14 -t roslibjsdocker .
docker run -v $(pwd):/root/roslibjs --rm roslibjsdocker bash -i -c 'bash /root/roslibjs/test/build.bash' It works |
Good! I will remove the last commit again. No problem, these things happen |
65c5e96
to
54f88b0
Compare
If a TFClient is disposed while a service call to update the goal is ongoing it will subscribe to the republished topic even if none is listening.
Bumps [rollup](https://github.com/rollup/rollup) from 2.64.0 to 2.66.0. - [Release notes](https://github.com/rollup/rollup/releases) - [Changelog](https://github.com/rollup/rollup/blob/master/CHANGELOG.md) - [Commits](rollup/rollup@v2.64.0...v2.66.0) --- updated-dependencies: - dependency-name: rollup dependency-type: direct:development update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] <[email protected]> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Public API Changes
None
Description
If a TFClient is disposed while a service call to update the goal is ongoing it will subscribe to the republished topic even if already disposed. To prevent this we mark the TFClient as disposed when it is disposed, and check for this in the service callback.
Fixes #488