Add consumer socket object and relayd commands
authorDavid Goulet <dgoulet@efficios.com>
Thu, 26 Jul 2012 18:54:20 +0000 (14:54 -0400)
committerDavid Goulet <dgoulet@efficios.com>
Mon, 30 Jul 2012 17:19:16 +0000 (13:19 -0400)
commit173af62f4804133d4a7f45e34b6f72126f3eca5f
treea7898e2ffa8304074875dac009da111f60226662
parentf64161251bd649abe5b6a473531adfa3af9bd6b6
Add consumer socket object and relayd commands

This commit adds a consumer_socket object and a lock to access it. This
fixes the possible concurrent access to the consumer(s) socket between
threads in the session daemon.

This also introduce the use of a sequence number during streaming so the
relayd can know when to close the trace file according to the sent
versus the expected sequence number.

Introduce the close_stream command between the consumer and relayd. Upon
a destroy session or a stream that hung up, the consumer now sends the
close stream command indicating the last sequence number. The consumer
never closes the relayd sockets unless a destroy relayd command (new) is
received from the session daemon which occurs on a destroy session
command.

Some fixes here and there but overall the streaming synchronization
issues have been resolved.

Signed-off-by: David Goulet <dgoulet@efficios.com>
Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
22 files changed:
src/bin/lttng-relayd/lttng-relayd.h
src/bin/lttng-relayd/main.c
src/bin/lttng-sessiond/consumer.c
src/bin/lttng-sessiond/consumer.h
src/bin/lttng-sessiond/kernel.c
src/bin/lttng-sessiond/main.c
src/bin/lttng-sessiond/trace-kernel.c
src/bin/lttng-sessiond/trace-kernel.h
src/bin/lttng-sessiond/ust-app.c
src/bin/lttng-sessiond/ust-consumer.c
src/bin/lttng-sessiond/ust-consumer.h
src/common/consumer.c
src/common/consumer.h
src/common/relayd/relayd.c
src/common/relayd/relayd.h
src/common/sessiond-comm/relayd.h
src/common/sessiond-comm/sessiond-comm.h
src/common/ust-consumer/ust-consumer.c
tests/tools/Makefile.am
tests/tools/streaming/run-kernel
tests/tools/test_kernel_data_trace.c
tests/utils.sh
This page took 0.029809 seconds and 4 git commands to generate.