This is an automated email from the ASF dual-hosted git repository.
lihao pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/auron.git
The following commit(s) were added to refs/heads/master by this push:
new c7ca8b6b fix incorrect common_prefix_len() (#1320)
c7ca8b6b is described below
commit c7ca8b6be25e31a2e21bf889f6ff572ece1d04f4
Author: Zhang Li <[email protected]>
AuthorDate: Mon Sep 22 14:19:57 2025 +0800
fix incorrect common_prefix_len() (#1320)
---
native-engine/datafusion-ext-plans/src/sort_exec.rs | 8 ++++----
1 file changed, 4 insertions(+), 4 deletions(-)
diff --git a/native-engine/datafusion-ext-plans/src/sort_exec.rs
b/native-engine/datafusion-ext-plans/src/sort_exec.rs
index c616c25b..2a201cdf 100644
--- a/native-engine/datafusion-ext-plans/src/sort_exec.rs
+++ b/native-engine/datafusion-ext-plans/src/sort_exec.rs
@@ -1393,12 +1393,12 @@ fn common_prefix_len(a: &[u8], b: &[u8]) -> usize {
}};
}
- while lcp + 8 < min_len && pread!(a, lcp, 8) == pread!(b, lcp, 8) {
+ while lcp + 8 <= min_len && pread!(a, lcp, 8) == pread!(b, lcp, 8) {
lcp += 8;
}
- lcp += (lcp + 4 < min_len && pread!(a, lcp, 4) == pread!(b, lcp, 4)) as
usize * 4;
- lcp += (lcp + 2 < min_len && pread!(a, lcp, 2) == pread!(b, lcp, 2)) as
usize * 2;
- lcp += (lcp + 1 < min_len && pread!(a, lcp, 1) == pread!(b, lcp, 1)) as
usize;
+ lcp += (lcp + 4 <= min_len && pread!(a, lcp, 4) == pread!(b, lcp, 4)) as
usize * 4;
+ lcp += (lcp + 2 <= min_len && pread!(a, lcp, 2) == pread!(b, lcp, 2)) as
usize * 2;
+ lcp += (lcp + 1 <= min_len && pread!(a, lcp, 1) == pread!(b, lcp, 1)) as
usize;
lcp
}