From e13c8ac08a8d67fb06b8b799c2689f687186a5f9 Mon Sep 17 00:00:00 2001 From: Jonathan Rajotte Date: Wed, 17 Jun 2020 15:05:48 -0400 Subject: [PATCH] tests: truncate metadata file for regenerate metadata test MIME-Version: 1.0 Content-Type: text/plain; charset=utf8 Content-Transfer-Encoding: 8bit Truncating the metadata file ensure that we test the effect of the regenerate metadata command. Otherwise we simply test the command return. Signed-off-by: Jonathan Rajotte Signed-off-by: Jérémie Galarneau Change-Id: I762dc849f69d2cf3fe8bf73c5a77d5c2a4aa4ae5 --- .../tools/regen-metadata/test_kernel | 44 ++++++++++++---- .../regression/tools/regen-metadata/test_ust | 52 +++++++++++++------ 2 files changed, 70 insertions(+), 26 deletions(-) diff --git a/tests/regression/tools/regen-metadata/test_kernel b/tests/regression/tools/regen-metadata/test_kernel index 570bed28d..84249a8fc 100755 --- a/tests/regression/tools/regen-metadata/test_kernel +++ b/tests/regression/tools/regen-metadata/test_kernel @@ -23,45 +23,67 @@ SESSION_NAME="" TRACE_PATH=$(mktemp -d) -NUM_TESTS=18 +NUM_TESTS=24 source $TESTDIR/utils/utils.sh function test_kernel_streaming () { + local metadata_path + diag "Test kernel streaming with metadata regeneration" create_lttng_session_uri $SESSION_NAME net://localhost lttng_enable_kernel_event $SESSION_NAME $EVENT_NAME start_lttng_tracing_ok $SESSION_NAME echo -n "100" > /proc/lttng-test-filter-event + + # Baseline + stop_lttng_tracing_ok $SESSION_NAME + validate_trace $EVENT_NAME $TRACE_PATH/$HOSTNAME/$SESSION_NAME* + + # Find the metadata file + metadata_path=$(find "$TRACE_PATH/$HOSTNAME/$SESSION_NAME"* | grep metadata) + + # Empty the metadata file + echo -n > "$metadata_path" + + start_lttng_tracing_ok $SESSION_NAME regenerate_metadata_ok $SESSION_NAME stop_lttng_tracing_ok $SESSION_NAME # Validate test validate_trace $EVENT_NAME $TRACE_PATH/$HOSTNAME/$SESSION_NAME* - if [ $? -eq 0 ]; then - # Only delete if successful - rm -rf $TRACE_PATH - else - break - fi destroy_lttng_session_ok $SESSION_NAME + rm -rf "$TRACE_PATH" } function test_kernel_local () { + local metadata_path + diag "Test kernel local with metadata regeneration" create_lttng_session_ok $SESSION_NAME $TRACE_PATH lttng_enable_kernel_event $SESSION_NAME $EVENT_NAME start_lttng_tracing_ok $SESSION_NAME + + # Baseline echo -n "100" > /proc/lttng-test-filter-event + stop_lttng_tracing_ok $SESSION_NAME + validate_trace $EVENT_NAME "$TRACE_PATH" + + # Find the metadata file + metadata_path=$(find "$TRACE_PATH"* | grep metadata) + + # Empty the metadata file + echo -n > "$metadata_path" + + start_lttng_tracing_ok $SESSION_NAME regenerate_metadata_ok $SESSION_NAME stop_lttng_tracing_ok $SESSION_NAME + validate_trace $EVENT_NAME $TRACE_PATH - if [ $? -eq 0 ]; then - # Only delete if successful - rm -rf $TRACE_PATH - fi destroy_lttng_session_ok $SESSION_NAME + + rm -rf "$TRACE_PATH" } plan_tests $NUM_TESTS diff --git a/tests/regression/tools/regen-metadata/test_ust b/tests/regression/tools/regen-metadata/test_ust index f1b967505..e4a8c1984 100755 --- a/tests/regression/tools/regen-metadata/test_ust +++ b/tests/regression/tools/regen-metadata/test_ust @@ -28,7 +28,7 @@ EVENT_NAME="tp:tptest" TRACE_PATH=$(mktemp -d) -NUM_TESTS=33 +NUM_TESTS=39 source $TESTDIR/utils/utils.sh @@ -51,6 +51,7 @@ function test_ust_streaming () { local file_sync_after_first=$(mktemp -u) local file_sync_before_last=$(mktemp -u) + local metadata_path diag "Test UST streaming with metadata regeneration" create_lttng_session_uri $SESSION_NAME net://localhost @@ -64,16 +65,26 @@ function test_ust_streaming () # Wait for the applications started in background wait - regenerate_metadata_ok $SESSION_NAME + # Expect a valid trace stop_lttng_tracing_ok $SESSION_NAME - destroy_lttng_session_ok $SESSION_NAME - # Validate test + validate_trace $EVENT_NAME "$TRACE_PATH/$HOSTNAME/$SESSION_NAME"* + + # Find the metadata file + metadata_path=$(find "$TRACE_PATH/$HOSTNAME/$SESSION_NAME"* | grep metadata) + + # Empty the metadata file + echo -n > "$metadata_path" + + start_lttng_tracing_ok $SESSION_NAME + regenerate_metadata_ok $SESSION_NAME + stop_lttng_tracing_ok $SESSION_NAME + + # Metadata file must have been regenerated validate_trace $EVENT_NAME $TRACE_PATH/$HOSTNAME/$SESSION_NAME* - if [ $? -eq 0 ]; then - # Only delete if successful - rm -rf $TRACE_PATH - fi + destroy_lttng_session_ok $SESSION_NAME + + rm -rf "$TRACE_PATH" rm -f ${file_sync_after_first} rm -f ${file_sync_before_last} } @@ -82,6 +93,7 @@ function test_ust_local () { local file_sync_after_first=$(mktemp -u) local file_sync_before_last=$(mktemp -u) + local metadata_path diag "Test UST local with metadata regeneration" create_lttng_session_ok $SESSION_NAME $TRACE_PATH @@ -95,16 +107,26 @@ function test_ust_local () # Wait for the applications started in background wait - regenerate_metadata_ok $SESSION_NAME + # Expect a valid trace stop_lttng_tracing_ok $SESSION_NAME - destroy_lttng_session_ok $SESSION_NAME - # Validate test + validate_trace $EVENT_NAME "$TRACE_PATH" + + # Find the metadata file + metadata_path=$(find "$TRACE_PATH"* | grep metadata) + + # Empty the metadata file + echo -n > "$metadata_path" + + start_lttng_tracing_ok $SESSION_NAME + regenerate_metadata_ok $SESSION_NAME + stop_lttng_tracing_ok $SESSION_NAME + + # Metadata file must have been regenerated validate_trace $EVENT_NAME $TRACE_PATH - if [ $? -eq 0 ]; then - # Only delete if successful - rm -rf $TRACE_PATH - fi + destroy_lttng_session_ok $SESSION_NAME + + rm -rf "$TRACE_PATH" rm -f ${file_sync_after_first} rm -f ${file_sync_before_last} } -- 2.34.1