[ros-users] ROS Clients that work out of the box without ROS .msg, .srv, and .action pre-compilation

Tim Niemueller niemueller at kbsg.rwth-aachen.de
Wed Jan 7 09:52:31 UTC 2015

Am 06.01.2015 um 22:37 schrieb Aaron Schiffman:
> Hi Tim,
> We are doing
> data logging with a custom rosbag recorder implementation in Java, that writes to an outputstream.

Hi Aaron.

Can you give some hints why you want to have a custom logger? If it is
about making the data structures available and query-able, you might
want to check out mongodb_log [1, 2], maybe it already does what you
intend to do (it's fast and provides powerful query capabilities). If it
is really just about recording the binary (encoded) message flow, what
would your method provide over rosbag?

Back in the days I did some simple benchmarks in particular regarding
decoding performance of messages in C++, Lua, and Python. The results
are on http://timn.github.io/roslua/ and the code used at
https://github.com/timn/ros-actionlib_benchmark. Maybe you want to
compare these to Java decoding performance. It turns out that this very
step is often what limits you the most for large-scale logging,
especially when you want to store the data in a query-able format
(because you often have many small messages which are hierarchically
structured and thus expensive to decode CPU-wise, rather than blobs you
could decode quicker which would actually be limited by available I/O

The data was recorded back in 2010 with Diamondback or Electric I guess,
so things might have changed. Back then rosbag also had the bug of
storing the message definition verbatim for each and every message
(resulting in the enormous compression rates one could achieve on bag
files and bad I/O performance, don't know if that has been fixed in the
meantime, presented my findings at OSRF in 2013).


[1] http://www.fawkesrobotics.org/projects/mongodb-log/
[2] http://wiki.ros.org/mongodb_log

KBSG - Knowledge-Based Systems Group            AllemaniACs RoboCup Team
http://robocup.rwth-aachen.de                     RWTH Aachen University
http://kbsg.rwth-aachen.de                               Ahornstrasse 55
http://www.fawkesrobotics.org                             D-52056 Aachen

More information about the ros-users mailing list