Fix: relayd vs consumerd compatibility
authorMathieu Desnoyers <mathieu.desnoyers@efficios.com>
Thu, 15 Dec 2016 10:04:57 +0000 (11:04 +0100)
committerJérémie Galarneau <jeremie.galarneau@efficios.com>
Fri, 16 Dec 2016 08:09:32 +0000 (03:09 -0500)
commitf8f3885cc52af9d3c951da78989d6f4a25270411
tree3ff6d488d8e6dec9f40c388f05d75df4e8652cae
parentde7e372efecc2cf51921f2ac5a657337e04a39d3
Fix: relayd vs consumerd compatibility

relay and consumerd 2.7 and 2.8 are expected to negociate compatibility
with the lowest common minor version.

If a consumer daemon 2.8 interacts with a relayd 2.7, it needs to send
the index fields for ctf index 1.0. Same if a relayd 2.8 interacts with
a consumer daemon 2.7: relayd should expect ctf index 1.0 fields, and
generate a ctf index 1.0 index file layout.

If both relayd and consumerd versions are 2.8+, then we can send the ctf
index 1.1 fields over the protocol, and store them in the index files.

Whenever the relayd live viewer server opens and reads an index file,
it needs to use the file's header to figure out the index "element"
size.

[ Should be applied to master, stable-2.9, stable-2.8. ]

Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
Signed-off-by: Jérémie Galarneau <jeremie.galarneau@efficios.com>
19 files changed:
src/bin/lttng-relayd/index.c
src/bin/lttng-relayd/index.h
src/bin/lttng-relayd/live.c
src/bin/lttng-relayd/main.c
src/bin/lttng-relayd/stream.c
src/bin/lttng-relayd/stream.h
src/bin/lttng-relayd/viewer-stream.c
src/bin/lttng-relayd/viewer-stream.h
src/common/consumer/consumer-stream.c
src/common/consumer/consumer.c
src/common/consumer/consumer.h
src/common/index/ctf-index.h
src/common/index/index.c
src/common/index/index.h
src/common/kernel-consumer/kernel-consumer.c
src/common/macros.h
src/common/relayd/relayd.c
src/common/sessiond-comm/relayd.h
src/common/ust-consumer/ust-consumer.c
This page took 0.030442 seconds and 4 git commands to generate.