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

jakevin pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/doris.git


The following commit(s) were added to refs/heads/master by this push:
     new 365c8eed7e [fix](function) width_bucket should get min and max from 
each tuple (#17466)
365c8eed7e is described below

commit 365c8eed7e95f19a97c7f1a335d1f093b802e619
Author: morrySnow <[email protected]>
AuthorDate: Fri Mar 10 13:14:12 2023 +0800

    [fix](function) width_bucket should get min and max from each tuple (#17466)
---
 be/src/vec/functions/function_width_bucket.cpp     |  5 +--
 .../nereids_function_p0/scalar_function/W.groovy   | 44 +++++++++++-----------
 2 files changed, 24 insertions(+), 25 deletions(-)

diff --git a/be/src/vec/functions/function_width_bucket.cpp 
b/be/src/vec/functions/function_width_bucket.cpp
index e88a936816..0dbf554fe4 100644
--- a/be/src/vec/functions/function_width_bucket.cpp
+++ b/be/src/vec/functions/function_width_bucket.cpp
@@ -73,12 +73,11 @@ private:
                 reinterpret_cast<const ColumnType&>(max_value_column);
         ColumnInt64& nested_column_concrete = 
reinterpret_cast<ColumnInt64&>(nested_column);
 
-        auto min_value = min_value_column_concrete.get_data()[0];
-        auto max_value = max_value_column_concrete.get_data()[0];
-
         size_t input_rows_count = expr_column.size();
 
         for (size_t i = 0; i < input_rows_count; ++i) {
+            auto min_value = min_value_column_concrete.get_data()[i];
+            auto max_value = max_value_column_concrete.get_data()[i];
             if (expr_column_concrete.get_data()[i] < min_value) {
                 continue;
             } else if (expr_column_concrete.get_data()[i] >= max_value) {
diff --git 
a/regression-test/suites/nereids_function_p0/scalar_function/W.groovy 
b/regression-test/suites/nereids_function_p0/scalar_function/W.groovy
index 329020cc23..015c4481f6 100644
--- a/regression-test/suites/nereids_function_p0/scalar_function/W.groovy
+++ b/regression-test/suites/nereids_function_p0/scalar_function/W.groovy
@@ -141,26 +141,26 @@ suite("nereids_scalar_fn_W") {
        qt_sql_weeks_sub_DateTimeV2_Integer_notnull "select weeks_sub(kdtmv2s1, 
kint) from fn_test_not_nullable order by kdtmv2s1, kint"
        qt_sql_weeks_sub_DateV2_Integer "select weeks_sub(kdtv2, kint) from 
fn_test order by kdtv2, kint"
        qt_sql_weeks_sub_DateV2_Integer_notnull "select weeks_sub(kdtv2, kint) 
from fn_test_not_nullable order by kdtv2, kint"
-//    qt_sql_width_bucket_TinyInt_TinyInt_TinyInt_TinyInt "select 
width_bucket(ktint, ktint, ktint + 1, 1) from fn_test order by ktint, ktint, 
ktint, ktint"
-//    qt_sql_width_bucket_TinyInt_TinyInt_TinyInt_TinyInt_notnull "select 
width_bucket(ktint, ktint, ktint + 1, 1) from fn_test_not_nullable order by 
ktint, ktint, ktint, ktint"
-//    qt_sql_width_bucket_SmallInt_SmallInt_SmallInt_SmallInt "select 
width_bucket(ksint, ksint, ksint + 1, 1) from fn_test order by ksint, ksint, 
ksint, ksint"
-//    qt_sql_width_bucket_SmallInt_SmallInt_SmallInt_SmallInt_notnull "select 
width_bucket(ksint, ksint, ksint + 1, 1) from fn_test_not_nullable order by 
ksint, ksint, ksint, ksint"
-//    qt_sql_width_bucket_Integer_Integer_Integer_Integer "select 
width_bucket(kint, kint, kint + 1, 1) from fn_test order by kint, kint, kint, 
kint"
-//    qt_sql_width_bucket_Integer_Integer_Integer_Integer_notnull "select 
width_bucket(kint, kint, kint + 1, 1) from fn_test_not_nullable order by kint, 
kint, kint, kint"
-//    qt_sql_width_bucket_BigInt_BigInt_BigInt_BigInt "select 
width_bucket(kbint, kbint, kbint + 1, 1) from fn_test order by kbint, kbint, 
kbint, kbint"
-//    qt_sql_width_bucket_BigInt_BigInt_BigInt_BigInt_notnull "select 
width_bucket(kbint, kbint, kbint + 1, 1) from fn_test_not_nullable order by 
kbint, kbint, kbint, kbint"
-//    qt_sql_width_bucket_Float_Float_Float_TinyInt "select 
width_bucket(kfloat, kfloat, kfloat + 1, 1) from fn_test order by kfloat, 
kfloat, kfloat, ktint"
-//    qt_sql_width_bucket_Float_Float_Float_TinyInt_notnull "select 
width_bucket(kfloat, kfloat, kfloat + 1, 1) from fn_test_not_nullable order by 
kfloat, kfloat, kfloat, ktint"
-//    qt_sql_width_bucket_Double_Double_Double_TinyInt "select 
width_bucket(kdbl, kdbl, kdbl + 1, 1) from fn_test order by kdbl, kdbl, kdbl, 
ktint"
-//    qt_sql_width_bucket_Double_Double_Double_TinyInt_notnull "select 
width_bucket(kdbl, kdbl, kdbl + 1, 1) from fn_test_not_nullable order by kdbl, 
kdbl, kdbl, ktint"
-//    qt_sql_width_bucket_DecimalV2_DecimalV2_DecimalV2_TinyInt "select 
width_bucket(kdcmls1, kdcmls1, kdcmls1 + 1, 1) from fn_test order by kdcmls1, 
kdcmls1, kdcmls1, ktint"
-//    qt_sql_width_bucket_DecimalV2_DecimalV2_DecimalV2_TinyInt_notnull 
"select width_bucket(kdcmls1, kdcmls1, kdcmls1 + 1, 1) from 
fn_test_not_nullable order by kdcmls1, kdcmls1, kdcmls1, ktint"
-//    qt_sql_width_bucket_Date_Date_Date_TinyInt "select width_bucket(kdt, 
kdt, kdt + interval 1 day, 1) from fn_test order by kdt, kdt, kdt, ktint"
-//    qt_sql_width_bucket_Date_Date_Date_TinyInt_notnull "select 
width_bucket(kdt, kdt, kdt + interval 1 day, 1) from fn_test_not_nullable order 
by kdt, kdt, kdt, ktint"
-//    qt_sql_width_bucket_DateV2_DateV2_DateV2_TinyInt "select 
width_bucket(kdtv2, kdtv2, kdtv2 + interval 1 day, 1) from fn_test order by 
kdtv2, kdtv2, kdtv2, ktint"
-//    qt_sql_width_bucket_DateV2_DateV2_DateV2_TinyInt_notnull "select 
width_bucket(kdtv2, kdtv2, kdtv2 + interval 1 day, 1) from fn_test_not_nullable 
order by kdtv2, kdtv2, kdtv2, ktint"
-//    qt_sql_width_bucket_DateTime_DateTime_DateTime_TinyInt "select 
width_bucket(kdtm, kdtm, kdtm + interval 1 day, 1) from fn_test order by kdtm, 
kdtm, kdtm, ktint"
-//    qt_sql_width_bucket_DateTime_DateTime_DateTime_TinyInt_notnull "select 
width_bucket(kdtm, kdtm, kdtm + interval 1 day, 1) from fn_test_not_nullable 
order by kdtm, kdtm, kdtm, ktint"
-//    qt_sql_width_bucket_DateTimeV2_DateTimeV2_DateTimeV2_TinyInt "select 
width_bucket(kdtmv2s1, kdtmv2s1, kdtmv2s1 + interval 1 day, 1) from fn_test 
order by kdtmv2s1, kdtmv2s1, kdtmv2s1, ktint"
-//    qt_sql_width_bucket_DateTimeV2_DateTimeV2_DateTimeV2_TinyInt_notnull 
"select width_bucket(kdtmv2s1, kdtmv2s1, kdtmv2s1 + interval 1 day, 1) from 
fn_test_not_nullable order by kdtmv2s1, kdtmv2s1, kdtmv2s1, ktint"
+    qt_sql_width_bucket_TinyInt_TinyInt_TinyInt_TinyInt "select 
width_bucket(ktint, ktint, ktint + 1, 1) from fn_test order by ktint, ktint, 
ktint, ktint"
+    qt_sql_width_bucket_TinyInt_TinyInt_TinyInt_TinyInt_notnull "select 
width_bucket(ktint, ktint, ktint + 1, 1) from fn_test_not_nullable order by 
ktint, ktint, ktint, ktint"
+    qt_sql_width_bucket_SmallInt_SmallInt_SmallInt_SmallInt "select 
width_bucket(ksint, ksint, ksint + 1, 1) from fn_test order by ksint, ksint, 
ksint, ksint"
+    qt_sql_width_bucket_SmallInt_SmallInt_SmallInt_SmallInt_notnull "select 
width_bucket(ksint, ksint, ksint + 1, 1) from fn_test_not_nullable order by 
ksint, ksint, ksint, ksint"
+    qt_sql_width_bucket_Integer_Integer_Integer_Integer "select 
width_bucket(kint, kint, kint + 1, 1) from fn_test order by kint, kint, kint, 
kint"
+    qt_sql_width_bucket_Integer_Integer_Integer_Integer_notnull "select 
width_bucket(kint, kint, kint + 1, 1) from fn_test_not_nullable order by kint, 
kint, kint, kint"
+    qt_sql_width_bucket_BigInt_BigInt_BigInt_BigInt "select 
width_bucket(kbint, kbint, kbint + 1, 1) from fn_test order by kbint, kbint, 
kbint, kbint"
+    qt_sql_width_bucket_BigInt_BigInt_BigInt_BigInt_notnull "select 
width_bucket(kbint, kbint, kbint + 1, 1) from fn_test_not_nullable order by 
kbint, kbint, kbint, kbint"
+    qt_sql_width_bucket_Float_Float_Float_TinyInt "select width_bucket(kfloat, 
kfloat, kfloat + 1, 1) from fn_test order by kfloat, kfloat, kfloat, ktint"
+    qt_sql_width_bucket_Float_Float_Float_TinyInt_notnull "select 
width_bucket(kfloat, kfloat, kfloat + 1, 1) from fn_test_not_nullable order by 
kfloat, kfloat, kfloat, ktint"
+    qt_sql_width_bucket_Double_Double_Double_TinyInt "select 
width_bucket(kdbl, kdbl, kdbl + 1, 1) from fn_test order by kdbl, kdbl, kdbl, 
ktint"
+    qt_sql_width_bucket_Double_Double_Double_TinyInt_notnull "select 
width_bucket(kdbl, kdbl, kdbl + 1, 1) from fn_test_not_nullable order by kdbl, 
kdbl, kdbl, ktint"
+    qt_sql_width_bucket_DecimalV2_DecimalV2_DecimalV2_TinyInt "select 
width_bucket(kdcmls1, kdcmls1, kdcmls1 + 1, 1) from fn_test order by kdcmls1, 
kdcmls1, kdcmls1, ktint"
+    qt_sql_width_bucket_DecimalV2_DecimalV2_DecimalV2_TinyInt_notnull "select 
width_bucket(kdcmls1, kdcmls1, kdcmls1 + 1, 1) from fn_test_not_nullable order 
by kdcmls1, kdcmls1, kdcmls1, ktint"
+    qt_sql_width_bucket_Date_Date_Date_TinyInt "select width_bucket(kdt, kdt, 
kdt + interval 1 day, 1) from fn_test order by kdt, kdt, kdt, ktint"
+    qt_sql_width_bucket_Date_Date_Date_TinyInt_notnull "select 
width_bucket(kdt, kdt, kdt + interval 1 day, 1) from fn_test_not_nullable order 
by kdt, kdt, kdt, ktint"
+    qt_sql_width_bucket_DateV2_DateV2_DateV2_TinyInt "select 
width_bucket(kdtv2, kdtv2, kdtv2 + interval 1 day, 1) from fn_test order by 
kdtv2, kdtv2, kdtv2, ktint"
+    qt_sql_width_bucket_DateV2_DateV2_DateV2_TinyInt_notnull "select 
width_bucket(kdtv2, kdtv2, kdtv2 + interval 1 day, 1) from fn_test_not_nullable 
order by kdtv2, kdtv2, kdtv2, ktint"
+    qt_sql_width_bucket_DateTime_DateTime_DateTime_TinyInt "select 
width_bucket(kdtm, kdtm, kdtm + interval 1 day, 1) from fn_test order by kdtm, 
kdtm, kdtm, ktint"
+    qt_sql_width_bucket_DateTime_DateTime_DateTime_TinyInt_notnull "select 
width_bucket(kdtm, kdtm, kdtm + interval 1 day, 1) from fn_test_not_nullable 
order by kdtm, kdtm, kdtm, ktint"
+    qt_sql_width_bucket_DateTimeV2_DateTimeV2_DateTimeV2_TinyInt "select 
width_bucket(kdtmv2s1, kdtmv2s1, kdtmv2s1 + interval 1 day, 1) from fn_test 
order by kdtmv2s1, kdtmv2s1, kdtmv2s1, ktint"
+    qt_sql_width_bucket_DateTimeV2_DateTimeV2_DateTimeV2_TinyInt_notnull 
"select width_bucket(kdtmv2s1, kdtmv2s1, kdtmv2s1 + interval 1 day, 1) from 
fn_test_not_nullable order by kdtmv2s1, kdtmv2s1, kdtmv2s1, ktint"
 }
\ No newline at end of file


---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to