An automatic session rotation is performed on destruction if more than
one trace chunk was created during the lifetime of a session. This is
not a good criterion to use in no-output/snapshot mode as multiple
trace chunks may have been created during a session's lifetime.
The "output_traces" flag is checked explicitly to prevent an automatic
session rotation from happenning on destroy.
Signed-off-by: Jérémie Galarneau <jeremie.galarneau@efficios.com>
if (session->most_recent_chunk_id.is_set &&
session->most_recent_chunk_id.value != 0 &&
- session->current_trace_chunk) {
+ session->current_trace_chunk && session->output_traces) {
+ /*
+ * Perform a last rotation on destruction if rotations have
+ * occurred during the session's lifetime.
+ */
ret = cmd_rotate_session(session, NULL);
if (ret != LTTNG_OK) {
ERR("Failed to perform an implicit rotation as part of the destruction of session \"%s\": %s",