This is an automated email from the ASF dual-hosted git repository.

morningman pushed a commit to branch branch-1.2-lts
in repository https://gitbox.apache.org/repos/asf/doris.git

commit 569e6ed57e395637e530e9b4d5318dbd7cfb4c96
Author: xueweizhang <zxw520bl...@163.com>
AuthorDate: Thu Dec 8 22:54:36 2022 +0800

    [fix](aggregate) agg table and unique table get different result when… 
(#14822)
    
    Signed-off-by: nextdreamblue <zxw520bl...@163.com>
---
 be/src/olap/generic_iterators.cpp | 13 ++++++++-----
 1 file changed, 8 insertions(+), 5 deletions(-)

diff --git a/be/src/olap/generic_iterators.cpp 
b/be/src/olap/generic_iterators.cpp
index afb752ab04..f8be5dc02b 100644
--- a/be/src/olap/generic_iterators.cpp
+++ b/be/src/olap/generic_iterators.cpp
@@ -263,15 +263,18 @@ private:
             }
 
             // if row cursors equal, compare segment id.
-            // here we sort segment id in reverse order, because of the row 
order in AGG_KEYS
-            // dose no matter, but in UNIQUE_KEYS table we only read the 
latest is one, so we
-            // return the row in reverse order of segment id
-            bool result = res == 0 ? lhs->data_id() < rhs->data_id() : res < 0;
+            // when in UNIQUE_KEYS table, we need only read the latest one, so 
we
+            // return the row in reverse order of segment id.
+            // when in AGG_KEYS table, we return the row in order of segment 
id, because
+            // we need replace the value with lower segment id by the one with 
higher segment id when
+            // non-vectorized.
             if (_is_unique) {
+                bool result = res == 0 ? lhs->data_id() < rhs->data_id() : res 
< 0;
                 result ? lhs->set_skip(true) : rhs->set_skip(true);
+                return result;
             }
 
-            return result;
+            return lhs->data_id() > rhs->data_id();
         }
 
         int _sequence_id_idx;


---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscr...@doris.apache.org
For additional commands, e-mail: commits-h...@doris.apache.org

Reply via email to