From a67f09318451d9884cc1fe4a06e6ded99b7bd474 Mon Sep 17 00:00:00 2001 From: Ruben Fiszel Date: Thu, 4 Apr 2024 13:38:01 +0200 Subject: [PATCH] fix: improve chars splitting for logs with utf-8 chars --- backend/windmill-worker/src/common.rs | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/backend/windmill-worker/src/common.rs b/backend/windmill-worker/src/common.rs index 17244643fd..ea6f96846f 100644 --- a/backend/windmill-worker/src/common.rs +++ b/backend/windmill-worker/src/common.rs @@ -643,7 +643,12 @@ async fn compact_logs( .unwrap_or(0); let (excess_prev_logs, current_logs) = if extra_split { - let (excess_prev_logs, current_logs) = nlogs.split_at(excess_size as usize); + let split_idx = nlogs + .char_indices() + .nth(excess_size_modulo) + .map(|(i, _)| i) + .unwrap_or(0); + let (excess_prev_logs, current_logs) = nlogs.split_at(split_idx); (excess_prev_logs, current_logs.to_string()) } else { ("", nlogs.to_string())