[ros-users] Crash in indigo

contradict contradict at gmail.com
Sun Jul 6 21:38:40 UTC 2014


The attached program crashes when run under ros indigo. The crash is
due to concurrent calls to rospy.get_param(), one in the test code and
one inside SubscriberStatisticsLogger (rospy/impl/statistics.py:64).
TransformListener subscribes to tf in a new thread
(tf/listener.py:238).

rospy.get_param is documented to be non-threadsafe, but I am not so
sure about rospy.Subscriber(). If Subscriber() should be thread safe,
then SubscriberStatisticsLogger needs to be modified to avoid
concurrent access to the same http connection object as the rest of
the node. Perhaps it could be given its own connection to the
parameter server? If Subscriber() is not intended to be threadsafe,
then TransformListenerThread needs to subscribe in __init__() instead
of run().

I am happy to submit a pull request wherever is appropriate.
-------------- next part --------------
A non-text attachment was scrubbed...
Name: test.py
Type: text/x-python
Size: 232 bytes
Desc: not available
URL: <http://lists.ros.org/pipermail/ros-users/attachments/20140706/84aeb6d9/attachment.py>


More information about the ros-users mailing list