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.