gz-sim icon indicating copy to clipboard operation
gz-sim copied to clipboard

Crashed during playback after adding a model with an inertia matrix using DART physics

Open liyitao-code opened this issue 11 months ago • 0 comments

Environment

  • OS Version: Ubuntu 24.04
  • Source or binary build? Source build, use gz-sim9 version:d83d135 Built with gcc version 13.3.0 (Ubuntu 13.3.0-6ubuntu2~24.04) Build options: -DCMAKE_BUILD_TYPE=Coverage

Description

  • Expected behavior: Gazebo doesn't crash
  • Actual behavior: Gazebo crashes

Steps to reproduce

  1. gz sim a.txt -r
  2. Use bash cmd_2.txt to add a complex model to the world. cmd_2.txt 3.Call the service /world/shapes/playback/control
gz service --timeout 500 -s /world/shapes/playback/control --reptype gz.msgs.Boolean --reqtype gz.msgs.LogPlaybackControl --req 'header {
  stamp {
    sec: 3857819818
    nsec: 50661
  }
  data {
    key: "c"
    value: ""
  }
}
pause: true
multi_step: -56558
forward: true
seek {
  sec: 585959821
  nsec: -25564
}'

Output

A: 
3.778e+20 2.873e+20 -3.403e+20 1.19e+09 -2.065e+10 0 0 0 
2.873e+20 2.507e+20 -3.008e+20 -8.79e+08 -1.501e+10 0 0 0 
-3.403e+20 -3.008e+20 3.614e+20 1.259e+09 1.769e+10 0 0 0 
0 0 0 0 0 0 0 0 
0 0 0 0 0 0 0 0 
A(0, 1): 2.873e+20
A(1, 0): 2.873e+20
gz sim server: ./dart/constraint/BoxedLcpConstraintSolver.cpp:229: virtual void dart::constraint::BoxedLcpConstraintSolver::solveConstrainedGroup(dart::constraint::ConstrainedGroup&): Assertion `isSymmetric( n, mA.data(), mOffset[i], mOffset[i] + constraint->getDimension() - 1)' failed.
Stack trace (most recent call last):
#31   Object "/lib/x86_64-linux-gnu/libruby-3.2.so.3.2", at 0x71732e84d8ef, in 
#30   Object "/lib/x86_64-linux-gnu/libruby-3.2.so.3.2", at 0x71732e78e099, in 
#29   Object "/lib/x86_64-linux-gnu/libruby-3.2.so.3.2", at 0x71732e6b7216, in rb_protect
#28   Object "/lib/x86_64-linux-gnu/libruby-3.2.so.3.2", at 0x71732e85c2c9, in rb_yield
#27   Object "/lib/x86_64-linux-gnu/libruby-3.2.so.3.2", at 0x71732e857b39, in rb_vm_exec
#26   Object "/lib/x86_64-linux-gnu/libruby-3.2.so.3.2", at 0x71732e8545db, in 
#25   Object "/lib/x86_64-linux-gnu/libruby-3.2.so.3.2", at 0x71732e8500fe, in 
#24   Object "/lib/x86_64-linux-gnu/libruby-3.2.so.3.2", at 0x71732e84d8ef, in 
#23   Object "/usr/lib/x86_64-linux-gnu/ruby/3.2.0/fiddle.so", at 0x71732e057b13, in 
#22   Object "/lib/x86_64-linux-gnu/libruby-3.2.so.3.2", at 0x71732e8163bb, in rb_nogvl
#21   Object "/usr/lib/x86_64-linux-gnu/ruby/3.2.0/fiddle.so", at 0x71732e05743b, in 
#20   Object "/lib/x86_64-linux-gnu/libffi.so.8", at 0x71732e41a0bd, in ffi_call
#19   Object "/lib/x86_64-linux-gnu/libffi.so.8", at 0x71732e4173ee, in 
#18   Object "/lib/x86_64-linux-gnu/libffi.so.8", at 0x71732e41ab15, in 
#17   Object "/home/liyitao/workspace/gz_lastest/install/lib/libgz-sim9-gz.so.9.0.0", at 0x7173284aed03, in runServer
#16   Object "/home/liyitao/workspace/gz_lastest/install/lib/libgz-sim9.so.9", at 0x717326f28a64, in gz::sim::v9::Server::Run(bool, unsigned long, bool)
#15   Object "/home/liyitao/workspace/gz_lastest/install/lib/libgz-sim9.so.9", at 0x717326f921da, in 
#14   Object "/home/liyitao/workspace/gz_lastest/install/lib/libgz-sim9.so.9", at 0x717326fc2987, in gz::sim::v9::SimulationRunner::Run(unsigned long)
#13   Object "/home/liyitao/workspace/gz_lastest/install/lib/libgz-sim9.so.9", at 0x717326fc3908, in gz::sim::v9::SimulationRunner::Step(gz::sim::v9::UpdateInfo const&)
#12   Object "/home/liyitao/workspace/gz_lastest/install/lib/libgz-sim9.so.9", at 0x717326fbff44, in gz::sim::v9::SimulationRunner::UpdateSystems()
#11   Object "/home/liyitao/workspace/gz_lastest/install/lib/gz-sim-9/plugins/libgz-sim-physics-system.so", at 0x7172ed6f3853, in 
#10   Object "/home/liyitao/workspace/gz_lastest/install/lib/gz-sim-9/plugins/libgz-sim-physics-system.so", at 0x7172ed712ad1, in 
#9    Object "/home/liyitao/workspace/gz_lastest/install/lib/gz-sim-9/plugins/libgz-sim-physics-system.so", at 0x7172ed7c67c2, in 
#8    Object "/home/liyitao/workspace/gz_lastest/install/lib/gz-physics-8/engine-plugins/libgz-physics-dartsim-plugin.so", at 0x7172e859a51d, in 
#7    Object "/lib/x86_64-linux-gnu/libdart.so.6.13", at 0x7172e79a966c, in dart::simulation::World::step(bool)
#6    Object "/lib/x86_64-linux-gnu/libdart.so.6.13", at 0x7172e79895b0, in dart::constraint::ConstraintSolver::solveConstrainedGroups()
#5    Object "/lib/x86_64-linux-gnu/libdart.so.6.13", at 0x7172e798600d, in dart::constraint::BoxedLcpConstraintSolver::solveConstrainedGroup(dart::constraint::ConstrainedGroup&)
#4    Object "/lib/x86_64-linux-gnu/libc.so.6", at 0x71732e23b516, in __assert_fail
#3    Object "/lib/x86_64-linux-gnu/libc.so.6", at 0x71732e22881a, in 
#2    Object "/lib/x86_64-linux-gnu/libc.so.6", at 0x71732e2288fe, in abort
#1    Object "/lib/x86_64-linux-gnu/libc.so.6", at 0x71732e24527d, in gsignal
#0    Object "/lib/x86_64-linux-gnu/libc.so.6", at 0x71732e29eb2c, in pthread_kill
Aborted (Signal sent by tkill() 349298 1000)

liyitao-code avatar Apr 28 '25 12:04 liyitao-code