[lttng-dev] CTF 2: removal of the JSON text sequence auxiliary stream feature

Philippe Proulx pproulx at efficios.com
Tue Mar 8 10:59:22 EST 2022


Hello,

Upon reflection, the JSON text sequence auxiliary streams of
CTF2-SPECRC-4.0 [1] and data streams are redundant concepts considering
that a CTF 2 data stream class may have a namespace and a name to
identify it as containing specific/auxiliary data.

Moreover, using data streams to transport "auxiliary" data means:

* Simpler implementation within existing CTF 1.8 tools: they can already
  read and/or write data streams.

  This means faster CTF 2 adoption.

* Simpler CTF 2 specification (JSON text sequence auxiliary stream
  concept is removed).

* More compact streams containing auxiliary data out of the box.

* A producer may attach user attributes to a data stream.

Note that if a data stream doesn't need a default clock, then its class
simply needs to not have any default clock class. This makes it possible
to have event records only containing data, without timing information.

The only lost benefit of not using JSON text sequence auxiliary streams
is not being able to read one without a CTF 2 data stream decoder.
However, I believe there's little point in doing so without having
access to a complete CTF 2 consumer to process the trace further anyway.

Considering all of the above, I'm about to release CTF2-SPECRC-5.0 which
removes the JSON text sequence auxiliary stream feature.

To remain backward compatible with CTF 1.8, however, CTF2-SPECRC-5.0
will specify a data stream class (having the `std` namespace) and event
record classes to make a data stream contain the trace environment
(`env` block in TSDL).

CTF 2 might also specify some "hidden" user attribute in the future to
indicate that a consumer should not display the instances of a given
data stream class. Indeed, should a data stream contain a symbol map,
for example, we don't want such data to show up in the output of a
Babeltrace 2 `sink.text.pretty` component or in the events editor of
Trace Compass.

Should you have any issue with this approach, please reply to this email
to illustrate your point of view.

Have a good day,

Philippe Proulx
EfficiOS Inc.
https://www.efficios.com/


More information about the lttng-dev mailing list