Hi, I was hoping to get a bit of clarity on something that’s been in the back of my mind regarding a migration to ROS2. At one point long ago, I remember reading that there was some consideration for building services over DDS pub/sub, and I thought ‘great, that means we’ll probably get first-class support for service bagging’. Lack of services is a huge pain point with using bags as a system logging mechanism in ROS1.
At some point, the landscape shifted and ROS2 services were implemented via DDS-RPC instead of pub/sub, which I imagine precludes using a side-channel recording mechanism like bagging. Sadly, with ROS2 actions being (rightfully) implemented via services, this means neither services nor actions are baggable in ROS2. That’s really a shame - I’m sure I’m not the only one who occasionally used ROS1 actions over services in some capacity just because they were baggable.
Understanding that ROS2 development is a sea of shifting priorities - is this something that would even be possible to resolve without fundamentally upending the design? Can it be ‘solved’ at the rmw implementation layer, or would it require more fundamental changes?