-
Notifications
You must be signed in to change notification settings - Fork 912
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
implement optional queueing for rospy publications (#169) #308
Conversation
+1 |
Is the expected behavior that you:
and so on? Does this make more sense than having the error state persist until explicitly cleared? I don't think this is better, but I just wanted to see what you thought. |
Yes, the raise will happen on the subsequent call and only once (not repeatedly). Since non of the existing code knows about this new wrapper adding something for clearing the error is not feasible and I would prefer it not to raise forever. As far as I have seen the code which uses this wrapper will always close the connection after an exception since the connection is in an unusable state anyway. |
+1 |
As it stands this is the best for hydro with minimal impact. The other consideration is what to do going forward. We should consider making this the default in Indigo. |
+1 Tested this out on our robot, works exactly as I was hoping. @dirk-thomas @tfoote thanks to both of you for taking care this! |
Which publishers have you changed to make it work in your scenario? Then we can make sure that they get fixed in the near term. |
@dirk-thomas For the most part my issues were in some of my higher level scripts that I was easily able to update. Not too much of the lower-level infrastructure that OSRF maintains uses rospy, although I know SMACH was one place where this change will make a huge difference. |
I guess tf is the other place where this frequently can be a problem, since for instance, you often have tf subscribers in RVIZ on a remote machine. |
implement optional queueing for rospy publications (#169)
implement optional queueing for rospy publications (ros#169)
Specifying the maximum queue size when creating a publisher (
ros_comm/clients/rospy/src/rospy/topics.py
Line 742 in 69fb651
There are several side effects to this change:
publish()
call to the user code (since they don't happen immediately but asynchronously)@tfoote @wjwwood Please review.