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
 }
 

Reply via email to