Discussion on ROS to ROS2 transition plan

Regarding your points:

  1. I think most people using ROS1 don’t really care, they just want it to work, which for the most part it does. I mean just look how everyone is polling for input at arbitrary intervals, as long as it works somehow people are happy.
  2. Same concern as above, I think most people don’t care and forcing them to think about lifecycles is not going to help the transition. Maybe this is optional, haven’t looked into it too much, if it is then disregard the comment.
  3. Fair point, as long as it’s optional, no complaints here.
  4. Based on my experience with RTI DDS it is quite a bit slower than TCPROS, unless you are sending binary blobs, which is what the official RTI performance benchmark is doing to show good numbers. In any case if you want to send/receive messages larger than 64K you need to adjust a lot of QoS settings behind the scenes and prepare for high memory consumption (I’ve seen it use ~10GB before with complex and nested data structures).
  5. What do you do if a node sends a request to another node which happens to run in the same Executor and thus on the same thread? Allowing the grouping of multiple nodes inside a single thread will open up the possibility of dead-locks. And again forcing people to sit down will make them re-think twice about moving to ROS2.