Fix: set metadata closed on a push/close metadata error
authorDavid Goulet <dgoulet@efficios.com>
Mon, 3 Jun 2013 17:13:55 +0000 (13:13 -0400)
committerDavid Goulet <dgoulet@efficios.com>
Mon, 3 Jun 2013 20:49:04 +0000 (16:49 -0400)
commit1b532a6039fbcdb02f698c23e79ee3f607a9790c
treeb0a67ff7640f756a568b1ff3ebaab9a058e1a8c0
parenta32bd7757cc9f642b3977897819982ed1eb3be80
Fix: set metadata closed on a push/close metadata error

Check the metadata closed flag before pushing and closing the metadata
on the consumer side. On any error from those two actions, the closed
flag is set to indicate to stop using the metadata registry until a
destroy is done.

Also, before creating a metadata, a check is done to see if the registry
metadata was closed previously or else a new metadata key is created and
the old values from the previous channel in the registry are used
causing a bad state on the consumer.

With per UID buffers, the metadata cache is shared accross multiple
applications so if the metadata buffers were deleted on the consumer for
whatever reasons, we must STOP using it or else undesired behaviors have
been observed such as causing synchronization issues between the state
of the consumer and sessiond.

A destroy session command will wipe the faulty metadata.

Acked-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
Acked-by: Julien Desfossez <julien.desfossez@efficios.com>
Signed-off-by: David Goulet <dgoulet@efficios.com>
src/bin/lttng-sessiond/ust-app.c
This page took 0.036582 seconds and 4 git commands to generate.