ROS2 failed to read bagselection unkown exception

21 visualizzazioni (ultimi 30 giorni)
When I try to read the messages from a specific topic in matlab I got unkown exception. This specific bag is the only one that got that error. I am attaching the topics I got, all of them are good except for the "novatel_bottom/bestpos". I wonder if there is further information about this error.
  2 Commenti
Jagadeesh Konakalla
Jagadeesh Konakalla il 16 Ago 2021
Hi Manuel,
Please reach out to us through the MathWorks Technical Support. We may need more information to help you out.
Thanks,
Jagadeesh K
Karthik Reddy Vennapureddy
Modificato: Karthik Reddy Vennapureddy il 16 Ago 2021
Hi Manuel,
With ROS 2 dashing installation command line,when you play the same bag file in python using "ros2 bag play <bag_folder>" after registering these custom messages via "colcon build", and run "ros2 topic echo /novatel_bottom/bestpos" in other terminal, could you check if the following error occurs:
"terminate called after throwing an instance of 'eprosima::fastcdr::exception::NotEnoughMemoryException'
what(): Not enough memory in the buffer stream
Aborted"
The reason for this error is the message is not serialized correctly on the topic and is corrupted, you can try re-recording the bag file with ROS 2 command line environment, see if "ros2 topic echo /novatel_bottom/bestpos" is successfull and then try reading the messages in MATLAB. If you have further issues, please contact MathWorks Technical Support as suggested by Jagadeesh.
Thanks,
Karthik Reddy

Accedi per commentare.

Risposte (1)

Karthik Reddy Vennapureddy
Hi Manuel,
While recording the ROS 2 bag file, the message failed to serialize on a topic and is corrupted. This can be seen by playing the bag file in ROS 2 python command line using "ros2 bag play <bagFolder>" in one terminal. Open other terminal and do "ros2 topic echo /novatel_bottom/bestpos", you can see that a error below is thrown:
"terminate called after throwing an instance of 'eprosima::fastcdr::exception::NotEnoughMemoryException'
what(): Not enough memory in the buffer stream
Aborted".
Starting with R2022a, a meaninful error message is shown here as :"Unable to read the data recorded on topic <topic_name> because the bag file appears to be corrupt. Record this topic again to the bag file".
Thanks,
Karthik Reddy

Prodotti


Release

R2021a

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by