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

Crash after calling set_pose service, with Assertion `math::verifyTransform(mT)' failed #2605

Open
gzfuzz opened this issue Sep 8, 2024 · 1 comment
Labels
bug Something isn't working good first issue Good for newcomers help wanted We accept pull requests!

Comments

@gzfuzz
Copy link

gzfuzz commented Sep 8, 2024

Environment

  • OS Version: Ubuntu 24.04
  • Source or binary build?
    source build
    gz-sim9 version: c1f379e
    built with
    gcc version 13.2.0 (Ubuntu 13.2.0-23ubuntu4)
    build options: -DCMAKE_BUILD_TYPE=Coverage
    also reproduced on gz-sim8 version: e237d59

Description

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

Steps to reproduce

  1. gz sim a.txt -r &
  2. call /world/default/set_pose service, with
gz service --timeout 10000 -s /world/default/set_pose --reptype gz.msgs.Boolean --reqtype gz.msgs.Pose --req 'name: "ground_plane"
position {
  x: -1.135452379765546
  y: 1.5092107430792936
  z: 8.13648902952947
}'

Output

The output is similar as #2538, with different assertion failure location (FreeJoint.cpp:670)

gz sim server: ./dart/dynamics/RevoluteJoint.cpp:186: virtual void dart::dynamics::RevoluteJoint::updateRelativeTransform() const: Assertion `math::verifyTransform(mT)' failed.
Stack trace (most recent call last):
#31   Object "/lib/x86_64-linux-gnu/libruby-3.2.so.3.2", at 0x78755f0545db, in 
#30   Object "/lib/x86_64-linux-gnu/libruby-3.2.so.3.2", at 0x78755f0500fe, in 
#29   Object "/lib/x86_64-linux-gnu/libruby-3.2.so.3.2", at 0x78755f04d8ef, in 
#28   Object "/usr/lib/x86_64-linux-gnu/ruby/3.2.0/fiddle.so", at 0x78755ec27b13, in 
#27   Object "/lib/x86_64-linux-gnu/libruby-3.2.so.3.2", at 0x78755f0163bb, in rb_nogvl
#26   Object "/usr/lib/x86_64-linux-gnu/ruby/3.2.0/fiddle.so", at 0x78755ec2743b, in 
#25   Object "/lib/x86_64-linux-gnu/libffi.so.8", at 0x78755ecfa0bd, in ffi_call
#24   Object "/lib/x86_64-linux-gnu/libffi.so.8", at 0x78755ecf73ee, in 
#23   Object "/lib/x86_64-linux-gnu/libffi.so.8", at 0x78755ecfab15, in 
#22   Object "/data/play/robot/workspace/install/lib/libgz-sim9-gz.so.9.0.0~pre1", at 0x7875586bdc83, in runServer
#21   Object "/data/play/robot/workspace/install/lib/libgz-sim9.so.9", at 0x787556fe1707, in gz::sim::v9::Server::Run(bool, unsigned long, bool)
#20   Object "/data/play/robot/workspace/install/lib/libgz-sim9.so.9", at 0x787557051bda, in 
#19   Object "/data/play/robot/workspace/install/lib/libgz-sim9.so.9", at 0x7875570835f3, in gz::sim::v9::SimulationRunner::Run(unsigned long)
#18   Object "/data/play/robot/workspace/install/lib/libgz-sim9.so.9", at 0x7875570845f8, in gz::sim::v9::SimulationRunner::Step(gz::sim::v9::UpdateInfo const&)
#17   Object "/data/play/robot/workspace/install/lib/libgz-sim9.so.9", at 0x787557080ab4, in gz::sim::v9::SimulationRunner::UpdateSystems()
#16   Object "/data/play/robot/workspace/install/lib/gz-sim-9/plugins/libgz-sim-physics-system.so", at 0x78752ab27f33, in 
#15   Object "/data/play/robot/workspace/install/lib/gz-sim-9/plugins/libgz-sim-physics-system.so", at 0x78752ab4720b, in 
#14   Object "/data/play/robot/workspace/install/lib/gz-sim-9/plugins/libgz-sim-physics-system.so", at 0x78752ac07414, in 
#13   Object "/data/play/robot/workspace/install/lib/gz-physics-8/engine-plugins/libgz-physics-dartsim-plugin.so", at 0x7875255de7c8, in 
#12   Object "/data/play/robot/workspace/install/lib/gz-physics-8/engine-plugins/libgz-physics-dartsim-plugin.so", at 0x7875255e69e5, in 
#11   Object "/data/play/robot/workspace/install/lib/gz-physics-8/engine-plugins/libgz-physics-dartsim-plugin.so", at 0x7875255ea19e, in 
#10   Object "/data/play/robot/workspace/install/lib/gz-physics-8/engine-plugins/libgz-physics-dartsim-plugin.so", at 0x7875255eeead, in 
#9    Object "/data/play/robot/workspace/install/lib/gz-physics-8/engine-plugins/libgz-physics-dartsim-plugin.so", at 0x7875255f3030, in 
#8    Object "/data/play/robot/workspace/install/lib/gz-physics-8/engine-plugins/libgz-physics-dartsim-plugin.so", at 0x7875255dec1d, in 
#7    Object "/lib/x86_64-linux-gnu/libdart.so.6.13", at 0x78752483cbd2, in dart::dynamics::Frame::getWorldTransform() const
#6    Object "/lib/x86_64-linux-gnu/libdart.so.6.13", at 0x787524888821, in dart::dynamics::Joint::getRelativeTransform() const
#5    Object "/lib/x86_64-linux-gnu/libdart.so.6.13", at 0x7875248e0725, in dart::dynamics::RevoluteJoint::updateRelativeTransform() const
#4    Object "/lib/x86_64-linux-gnu/libc.so.6", at 0x78755ea3b506, in __assert_fail
#3    Object "/lib/x86_64-linux-gnu/libc.so.6", at 0x78755ea2881a, in 
#2    Object "/lib/x86_64-linux-gnu/libc.so.6", at 0x78755ea288fe, in abort
#1    Object "/lib/x86_64-linux-gnu/libc.so.6", at 0x78755ea4526d, in gsignal
#0    Object "/lib/x86_64-linux-gnu/libc.so.6", at 0x78755ea9eb1c, in pthread_kill
Aborted (Signal sent by tkill() 599683 1000)
@gzfuzz gzfuzz added the bug Something isn't working label Sep 8, 2024
@azeey azeey added the help wanted We accept pull requests! label Nov 11, 2024
@azeey
Copy link
Contributor

azeey commented Nov 11, 2024

This is probably failing because it's trying to move a plane. I think it would be suffient to detect that the object is a plane and refuse to move it with an error message.

@azeey azeey added the good first issue Good for newcomers label Nov 11, 2024
@azeey azeey moved this from Inbox to To do in Core development Nov 11, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug Something isn't working good first issue Good for newcomers help wanted We accept pull requests!
Projects
Status: To do
Development

No branches or pull requests

2 participants