Segmentation fault with joint_monkey.py and my URDF file

I made a modified version of joint_monkey.py that loads and displays my URDF file. The file is attached to this message. In its current form, the URDF file will cause joint_monkey.py to get a segmentation fault in gym.simulate(sim). I loaded the resulting core file into gdb, and got this:

Program terminated with signal SIGSEGV, Segmentation fault.
#0 0x00007f9420c1cb95 in physx::Dy::FeatherstoneArticulation::setupInternalConstraintsRecursive(physx::Dy::ArticulationLink*, unsigned int, bool, physx::Dy::ArticulationData&, physx::Cm::SpatialVectorF*, float, float, float, float, bool, unsigned int, float) ()
from /mnt/nas/jim/software/nvidia/isaacgym/python/isaacgym/_bindings/linux-x86_64/libcarb.gym.plugin.so
[Current thread is 1 (Thread 0x7f9439bf0740 (LWP 10821))]

If robot_seg_fault.urdf is modified so that the section labeled “This causes a segmentation fault” is commented out and the section labeled “This works” is uncommented out, joint_monkey.py displays the robot correctly. Please let me know if you need any more information about this problem.

robot_seg_fault.urdf (39.2 KB)

I tried to use joint_monkey.py to display robot_seg_fault.urdf with 1.0preview2, and I encountered behavior that differs from that of 1.0preview1. Now, instead of getting a segmentation fault, gym.simulate() hangs. <ctrl>c won’t stop the program; I have to do a “kill -9” from another shell to get joint_monkey.py to exit.

Hi @jim.rothrock,

I will take a look and get back to you.

1 Like