You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Expected behavior: Messages of any reasonable size are transported.
Actual behavior: E.g. pointclouds from depth cameras with large resolution are not transported whole.
Steps to reproduce
Place an rgbd_camera sensor with resolution of 2048x1536 in the scene.
Launch ros_ign bridge for the points topic of the sensor.
The pointcloud that arrives to the ROS subscriber has only 67 MB instead of the expected 75.5 MB.
Rviz refuses to render the pointcloud with: Data size (67108725 bytes) does not match width (2048) times height (1536) times point_step (24). Dropping message.
Output
The console of the ros_ign bridge shows these error messages:
[libprotobuf ERROR google/protobuf/io/coded_stream.cc:207] A protocol message was rejected because it was too big (more than 67108864 bytes). To increase the limit (or to disable these warnings), see CodedInputStream::SetTotalBytesLimit() in google/protobuf/io/coded_stream.h.
SubscriptionHandler::CreateMsg() error: ParseFromString failed
I understand that having a limit on the message size is a good thing, but it should probably be higher. ROS throws away messages that would be 1 GB and larger according to their metadata.
Or maybe the limit could be configurable, and ros_ign bridge could check if it has to raise it or not.
The text was updated successfully, but these errors were encountered:
I understand that having a limit on the message size is a good thing, but it should probably be higher.
It appears from the Protobuf API that this should be coded to INT_MAX (~2GB) by default. I couldn't find any evidence we were manipulating that in ign-transport or ros_ign_bridge. Did you find somewhere that it was set to 67MB?
No, I haven't found the place where this limit is set.
ros_ign_point_cloud is not really useful until the ROS-Ign integration in plugins like gazebo_ros_api_plugin is resolved. And even then, applications like SubT simulator need to send data to multiple ROS masters, so that would not help either.
Environment
Description
Steps to reproduce
rgbd_camera
sensor with resolution of 2048x1536 in the scene.points
topic of the sensor.Data size (67108725 bytes) does not match width (2048) times height (1536) times point_step (24). Dropping message.
Output
The console of the ros_ign bridge shows these error messages:
I understand that having a limit on the message size is a good thing, but it should probably be higher. ROS throws away messages that would be 1 GB and larger according to their metadata.
Or maybe the limit could be configurable, and ros_ign bridge could check if it has to raise it or not.
The text was updated successfully, but these errors were encountered: