From ec2e1cd762fa00698bf42a55a212f21196f525dc Mon Sep 17 00:00:00 2001 From: stdpain <34912776+stdpain@users.noreply.github.com> Date: Fri, 15 Dec 2023 19:41:00 +0800 Subject: [PATCH] [BugFix] Fix order by nan column overflow (#30759) (#37024) Signed-off-by: stdpain --- be/src/exec/sorting/sort_helper.h | 31 ++++++++++++++++++++++++++++ be/test/exec/chunks_sorter_test.cpp | 19 +++++++++++++++++ be/test/exec/test_data/nan_column | Bin 0 -> 688128 bytes 3 files changed, 50 insertions(+) create mode 100755 be/test/exec/test_data/nan_column diff --git a/be/src/exec/sorting/sort_helper.h b/be/src/exec/sorting/sort_helper.h index 86ece39872a25..a368db00e3976 100644 --- a/be/src/exec/sorting/sort_helper.h +++ b/be/src/exec/sorting/sort_helper.h @@ -15,6 +15,7 @@ #pragma once #include +#include #include "column/nullable_column.h" #include "column/type_traits.h" @@ -75,6 +76,36 @@ struct SorterComparator { } }; +template <> +struct SorterComparator { + static int compare(float lhs, float rhs) { + lhs = std::isnan(lhs) ? 0 : lhs; + rhs = std::isnan(rhs) ? 0 : rhs; + if (lhs == rhs) { + return 0; + } else if (lhs < rhs) { + return -1; + } else { + return 1; + } + } +}; + +template <> +struct SorterComparator { + static int compare(double lhs, double rhs) { + lhs = std::isnan(lhs) ? 0 : lhs; + rhs = std::isnan(rhs) ? 0 : rhs; + if (lhs == rhs) { + return 0; + } else if (lhs < rhs) { + return -1; + } else { + return 1; + } + } +}; + // TODO: reduce duplicate code template static inline Status sort_and_tie_helper_nullable_vertical(const std::atomic& cancel, diff --git a/be/test/exec/chunks_sorter_test.cpp b/be/test/exec/chunks_sorter_test.cpp index ec3d605f1a363..cd919a30f2b9e 100644 --- a/be/test/exec/chunks_sorter_test.cpp +++ b/be/test/exec/chunks_sorter_test.cpp @@ -39,6 +39,7 @@ #include "runtime/types.h" #include "testutil/assert.h" #include "util/json.h" +#include "util/orlp/pdqsort.h" namespace starrocks { @@ -1148,4 +1149,22 @@ TEST_F(ChunksSorterTest, test_tie) { } } +// https://github.com/StarRocks/starrocks/issues/30758 +TEST_F(ChunksSorterTest, test_nan) { + std::ifstream ifs("./be/test/exec/test_data/nan_column"); + std::string context((std::istreambuf_iterator(ifs)), (std::istreambuf_iterator())); + DoubleColumn double_column; + double_column.resize(86016); + auto& data = double_column.get_data(); + memcpy(data.data(), context.data(), context.size()); + auto permutation = create_small_permutation(double_column.size()); + auto inlined = create_inline_permutation(permutation, data); + auto begin = inlined.begin() + 26012; + auto end = inlined.begin() + 26047; + + ::pdqsort(begin, end, [&](auto lhs, auto rhs) { + return SorterComparator::compare(lhs.inline_value, rhs.inline_value) > 0; + }); +} + } // namespace starrocks diff --git a/be/test/exec/test_data/nan_column b/be/test/exec/test_data/nan_column new file mode 100755 index 0000000000000000000000000000000000000000..f74150bf513df14bc9e5437050e8b96e732b31c7 GIT binary patch literal 688128 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