runtime_error during trajectory (joint_trajectory_controller)
ROS Noetic with Gazebo-11.
I use rospy to control a robot (UR). The error occurs sporadically, with no discernible pattern:
terminate called after throwing an instance of 'std::runtime_error'
what(): Duration is out of dual 32-bit range
And the backtrace:
0 __GI_raise (sig=sig@entry=6) at ../sysdeps/unix/sysv/linux/raise.c:50
1 0x00007ffff716e859 in __GI_abort () at abort.c:79
2 0x00007ffff73f6911 in () at /lib/x86_64-linux-gnu/libstdc++.so.6
3 0x00007ffff740238c in () at /lib/x86_64-linux-gnu/libstdc++.so.6
4 0x00007ffff74023f7 in () at /lib/x86_64-linux-gnu/libstdc++.so.6
5 0x00007ffff74026a9 in () at /lib/x86_64-linux-gnu/libstdc++.so.6
6 0x00007fffde1f051f in ros::DurationBase<ros::duration>::fromSec(double) () at /opt/ros/noetic/lib/librostime.so
7 0x00007fff2437427d in joint_trajectory_controller::JointTrajectoryController<trajectory_interface::quinticsplinesegment<double>, hardware_interface::EffortJointInterface>::publishState(ros::Time const&) () at /opt/ros/noetic/lib//libjoint_trajectory_controller.so
8 0x00007fff2439b974 in joint_trajectory_controller::JointTrajectoryController<trajectory_interface::quinticsplinesegment<double>, hardware_interface::EffortJointInterface>::update(ros::Time const&, ros::Duration const&) () at /opt/ros/noetic/lib//libjoint_trajectory_controller.so
9 0x00007fff44336d86 in controller_manager::ControllerManager::update(ros::Time const&, ros::Duration const&, bool) () at /opt/ros/noetic/lib/libcontroller_manager.so
10 0x00007fff443acd98 in gazebo_ros_control::GazeboRosControlPlugin::Update() () at /opt/ros/noetic/share/gazebo_plugins/../../lib/libgazebo_ros_control.so
11 0x00007ffff6bbc4c4 in gazebo::physics::World::Update() () at /lib/x86_64-linux-gnu/libgazebo_physics.so.11
12 0x00007ffff6bcbc9c in gazebo::physics::World::Step() () at /lib/x86_64-linux-gnu/libgazebo_physics.so.11
13 0x00007ffff6bcedb5 in gazebo::physics::World::RunLoop() () at /lib/x86_64-linux-gnu/libgazebo_physics.so.11
14 0x00007ffff742ede4 in () at /lib/x86_64-linux-gnu/libstdc++.so.6
15 0x00007ffff6d3c609 in start_thread (arg=<optimized out="">) at pthread_create.c:477
16 0x00007ffff726b293 in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:95
Even if the trajectory is always the same, it happend sometimes after one trajectory, sometimes not even after thousands. Any idea?
Hi sre, we ran into the exact issue. It does also happen randomly (or it seems). I up voted the issue in hope that some one from OSRF would look at it.