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

rosbag2 fails to record messages generated directly from IDL #127

Closed
davidhodo opened this issue Jun 8, 2019 · 1 comment
Closed

rosbag2 fails to record messages generated directly from IDL #127

davidhodo opened this issue Jun 8, 2019 · 1 comment

Comments

@davidhodo
Copy link
Contributor

davidhodo commented Jun 8, 2019

Bug report

  • Operating System:
    • MacOS 10.14.5 (Mojave)
  • Installation type:
    • Binaries
  • Version or commit hash:
    • Dashing
  • DDS implementation:
    • Fast-RTPS

Steps to reproduce issue

ROS2 bag fails to subscribe to messages generated directly from .idl files. An example package that creates a simple string message using idl can be found at: ros2_idl_demo. Building the message (idl_msgs) and sample publisher (idl_pub) packages and then running ros2 run idl_pub idl_pub and 'ros2 bag record -a' or 'ros2 bag record /chatter' fails to record the message published from idl_pub.

Expected behavior

davidhodo@Davids-MacBook-Pro:idl_test_ws∫ ros2 bag record /chatter
[INFO] [rosbag2_storage]: Opened database 'rosbag2_2019_06_08-12_29_58'.
[INFO] [rosbag2_transport]: Listening for topics...
[INFO] [rosbag2_transport]: Subscribed to topic '/chatter'
[INFO] [rosbag2_transport]: All requested topics are subscribed. Stopping discovery...

Actual behavior

davidhodo@Davids-MacBook-Pro:idl_test_ws∫ ros2 bag record /chatter
[INFO] [rosbag2_storage]: Opened database 'rosbag2_2019_06_08-12_17_47'.
[INFO] [rosbag2_transport]: Listening for topics...

Additional information

Could this be related to the message type / package name changes when using idl directly as described in this issue?

[UPDATE]
In typesupport_helpers.cpp:99 there is a hardcoded "__msg__" in the generation of the symbol name. Changing this to "__idl__" allows the idl message to be recorded at the expense of no longer working for standard messages. This value should be set based on the package type.

@davidhodo
Copy link
Contributor Author

Resolved by PR #128

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

No branches or pull requests

1 participant