0
$\begingroup$

Rosanswers logo

Suddenly I start seeing this error:

[ERROR] [1520525542.826204079] [/rosout]: a message of over a gigabyte was predicted in tcpros. that seems highly unlikely, so I'll assume protocol synchronization is lost.

[ERROR] [1520525542.826297310] [/rosout]: Exception thrown when deserializing message of length [0] from [/task_runner]: Buffer Overrun

[ERROR] [1520525542.826355406] [/rosout]: Exception thrown when deserializing message of length [11596] from [/task_runner]: Buffer Overrun

Details:

  • Seems to appear randomly
  • The node /task_runner is running a large smach state machine, with a large number or topic subscriptions.
  • There is only one PC involved.
  • Kinetic, Ubuntu 16.04

In the log for task_runner I found this error message at the same point in time:

[rospy.rosout][ERROR] 2018-03-09 08:28:55,914: Unable to report rosout: Set changed size during iteration
Traceback (most recent call last):
  File "/opt/ros/kinetic/lib/python2.7/dist-packages/rospy/impl/rosout.py", line 91, in _rosout
    _rosout_pub.publish(l)
  File "/opt/ros/kinetic/lib/python2.7/dist-packages/rospy/topics.py", line 882, in publish
    self.impl.publish(data)
  File "/opt/ros/kinetic/lib/python2.7/dist-packages/rospy/topics.py", line 1066, in publish
    serialize_message(b, self.seq, message)
  File "/opt/ros/kinetic/lib/python2.7/dist-packages/rospy/msg.py", line 152, in serialize_message
    msg.serialize(b)
  File "/opt/ros/kinetic/lib/python2.7/dist-packages/rosgraph_msgs/msg/_Log.py", line 153, in serialize
    for val1 in self.topics:
RuntimeError: Set changed size during iteration

So I conclude that the rosout logging breaks because I perform logging whiIe another thread is adding a topic to the same node. If so, how would I solve this in a generic way?


Originally posted by knxa on ROS Answers with karma: 811 on 2018-03-08

Post score: 0

$\endgroup$

1 Answer 1

0
$\begingroup$

Rosanswers logo

I believe this is the problem:

The combination of logging to rosout and subscribing to topics is not threadsafe. I have created a new question.


Originally posted by knxa with karma: 811 on 2018-03-09

This answer was ACCEPTED on the original site

Post score: 0

$\endgroup$

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.