TRACE_PATH=$(mktemp --tmpdir -d -t tmp.test_ust_rotation_trace_path.XXXXXX)
-NUM_TESTS=138
+NUM_TESTS=152
source $TESTDIR/utils/utils.sh
source $CURDIR/rotate_utils.sh
destroy_lttng_session_ok $SESSION_NAME
- validate_test_chunks "${local_path}" $today $app_path ust $per_pid
+ validate_test_chunks "${local_path}" $today $app_path ust
}
function test_ust_streaming_uid ()
destroy_lttng_session_ok $SESSION_NAME
}
+function produce_n_events ()
+{
+ local event_count=$1
+
+ $TESTAPP_BIN -i "$event_count" -w 0 > /dev/null 2>&1
+}
+
+function test_ust_local_size_uid ()
+{
+ diag "Rotate uid local session every 2MiB"
+ local size_threshold=$((2 * 1024 * 1024))
+
+ diag "Test ust local with size-based session rotation per-uid"
+ create_lttng_session_ok $SESSION_NAME $TRACE_PATH
+ enable_ust_lttng_channel_ok $SESSION_NAME "channel0" --buffers-uid
+ enable_ust_lttng_event_ok $SESSION_NAME $EVENT_NAME "channel0"
+ lttng_enable_rotation_size_ok $SESSION_NAME $size_threshold
+ start_lttng_tracing_ok $SESSION_NAME
+
+ # Cutoff at 100 times the expected size
+ trace_until_n_archives produce_n_events "$TRACE_PATH" 5 $((5 * 100 * size_threshold))
+
+ destroy_lttng_session_ok $SESSION_NAME
+}
+
+function test_ust_local_size_pid ()
+{
+ diag "Rotate uid local session every 2MiB"
+ local size_threshold=$((2 * 1024 * 1024))
+
+ diag "Test ust local with size-based session rotation per-pid"
+ create_lttng_session_ok $SESSION_NAME $TRACE_PATH
+ enable_ust_lttng_channel_ok $SESSION_NAME "channel0" --buffers-pid
+ enable_ust_lttng_event_ok $SESSION_NAME $EVENT_NAME "channel0"
+ lttng_enable_rotation_size_ok $SESSION_NAME $size_threshold
+ start_lttng_tracing_ok $SESSION_NAME
+
+ # Cutoff at 100 times the expected size
+ trace_until_n_archives produce_n_events "$TRACE_PATH" 3 $((3 * 100 * size_threshold))
+
+ destroy_lttng_session_ok $SESSION_NAME
+}
+
plan_tests $NUM_TESTS
print_test_banner "$TEST_DESC"
test_ust_streaming_pid test_ust_local_pid \
test_ust_local_timer_uid test_ust_streaming_timer_uid \
test_ust_local_timer_pid test_ust_streaming_timer_pid \
+ test_ust_local_size_uid test_ust_local_size_pid \
test_incompatible_sessions )
for fct_test in ${tests[@]};