Restore IgnMonitor behavior after bug in Ignition::transport is fixed
- Dominant language
- C++
- Stars
- 0
- Forks
- 0
- PR merge metrics
- No merged PRs in 30d
Description
`Ignition-transport7`
When you subscribe to a topic it doesn't guarantee that the callback method you provide is going to be executed while
the instance of the class that holds that callback method is still alive.
In particular in `IgnMonitor` class, it caused SEGFAULTS because in certain situations the callbacks were executed after that `IgnMonitor` instance class had been destroyed. See: https://github.com/ToyotaResearchInstitute/delphyne/issues/751
A workaround was provided in this PR: https://github.com/ToyotaResearchInstitute/delphyne/pull/759
However, the implementation/functioning of `IgnMonitor` is expected to be restored once this bug in `Ignition-transport` is fixed.
Contributor guide
No contributing guide indexed for this repository
Research direction
Start by reviewing the IgnMonitor implementation and the workaround in pull request #759, then compare the failure described in issue #751 with the Ignition-transport7 behavior. Done means restoring IgnMonitor's prior behavior after the Ignition::transport bug is fixed, without callbacks running after the owning instance is destroyed.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- cpp
- Domain
- robotics
- Issue type
- Bug
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Stale
- Clarity
- Needs clarification
- Newbie friendliness
- 28/100