You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@doris.apache.org by GitBox <gi...@apache.org> on 2022/05/06 01:23:51 UTC

[GitHub] [incubator-doris] liaoxin01 opened a new issue, #9394: [Bug] core dump on variance with decimal type

liaoxin01 opened a new issue, #9394:
URL: https://github.com/apache/incubator-doris/issues/9394

   ### Search before asking
   
   - [X] I had searched in the [issues](https://github.com/apache/incubator-doris/issues?q=is%3Aissue) and found no similar issues.
   
   
   ### Version
   
   master: e3b90de
   
   ### What's Wrong?
   
   **Debug version**:
   Minidump created at: /root/code/incubator-doris/output/be/minidump/8fc540fe-f9b2-4277-af7416a1-2ea0689a.dmp
   *** Aborted at 1651799489 (unix time) try "date -d @1651799489" if you are using GNU date ***
   *** SIGABRT unkown detail explain (@0x9a6f) received by PID 39535 (TID 0x7f4b6a16a700) from PID 39535; stack trace: ***
    0# doris::signal::(anonymous namespace)::FailureSignalHandler(int, siginfo_t*, void*) at /root/code/incubator-doris/be/src/common/signal_handler.h:405
    1# 0x00007F4BB610C400 in /lib64/libc.so.6
    2# gsignal in /lib64/libc.so.6
    3# abort in /lib64/libc.so.6
    4# google::ReadFromOffset(int, void*, unsigned long, long) [clone .cold] at src/symbolize.cc:146
    5# 0x000055684E6634FD at src/logging.cc:1650
    6# google::LogMessage::SendToLog() at src/logging.cc:1607
    7# google::LogMessage::Flush() at src/logging.cc:1477
    8# google::LogMessageFatal::~LogMessageFatal() at src/logging.cc:2227
    9# doris::vectorized::ColumnDecimal<doris::vectorized::Decimal<__int128> >& assert_cast<doris::vectorized::ColumnDecimal<doris::vectorized::Decimal<__int128> >&, doris::vectorized::IColumn&>(doris::vectorized::IColumn&) at /root/code/incubator-doris/be/src/vec/common/assert_cast.h:50
   10# doris::vectorized::PopData<doris::vectorized::Decimal<__int128>, doris::vectorized::BaseDatadecimal<false> >::insert_result_into(doris::vectorized::IColumn&) const at /root/code/incubator-doris/be/src/vec/aggregate_functions/aggregate_function_stddev.h:188
   11# doris::vectorized::AggregateFunctionSampVariance<true, doris::vectorized::VarianceName<doris::vectorized::PopData<doris::vectorized::Decimal<__int128>, doris::vectorized::BaseDatadecimal<false> > >, false>::insert_result_into(char const*, doris::vectorized::IColumn&) const at /root/code/incubator-doris/be/src/vec/aggregate_functions/aggregate_function_stddev.h:291
   12# doris::vectorized::AggregateFunctionNullBase<true, doris::vectorized::AggregateFunctionNullUnary<true> >::insert_result_into(char const*, doris::vectorized::IColumn&) const at /root/code/incubator-doris/be/src/vec/aggregate_functions/aggregate_function_null.h:160
   13# doris::vectorized::AggFnEvaluator::insert_result_info(char*, doris::vectorized::IColumn*) at /root/code/incubator-doris/be/src/vec/exprs/vectorized_agg_fn.cpp:130
   14# doris::vectorized::AggregationNode::_get_without_key_result(doris::RuntimeState*, doris::vectorized::Block*, bool*) at /root/code/incubator-doris/be/src/vec/exec/vaggregation_node.cpp:443
   15# doris::Status std::__invoke_impl<doris::Status, doris::Status (doris::vectorized::AggregationNode::*&)(doris::RuntimeState*, doris::vectorized::Block*, bool*), doris::vectorized::AggregationNode*&, doris::RuntimeState*, doris::vectorized::Block*, bool*>(std::__invoke_memfun_deref, doris::Status (doris::vectorized::AggregationNode::*&)(doris::RuntimeState*, doris::vectorized::Block*, bool*), doris::vectorized::AggregationNode*&, doris::RuntimeState*&&, doris::vectorized::Block*&&, bool*&&) at /var/local/ldb-toolchain/include/c++/11/bits/invoke.h:75
   16# std::enable_if<is_invocable_r_v<doris::Status, doris::Status (doris::vectorized::AggregationNode::*&)(doris::RuntimeState*, doris::vectorized::Block*, bool*), doris::vectorized::AggregationNode*&, doris::RuntimeState*, doris::vectorized::Block*, bool*>, doris::Status>::type std::__invoke_r<doris::Status, doris::Status (doris::vectorized::AggregationNode::*&)(doris::RuntimeState*, doris::vectorized::Block*, bool*), doris::vectorized::AggregationNode*&, doris::RuntimeState*, doris::vectorized::Block*, bool*>(doris::Status (doris::vectorized::AggregationNode::*&)(doris::RuntimeState*, doris::vectorized::Block*, bool*), doris::vectorized::AggregationNode*&, doris::RuntimeState*&&, doris::vectorized::Block*&&, bool*&&) in /root/code/incubator-doris/output/be/lib/palo_be
   17# doris::Status std::_Bind_result<doris::Status, doris::Status (doris::vectorized::AggregationNode::*(doris::vectorized::AggregationNode*, std::_Placeholder<1>, std::_Placeholder<2>, std::_Placeholder<3>))(doris::RuntimeState*, doris::vectorized::Block*, bool*)>::__call<doris::Status, doris::RuntimeState*&&, doris::vectorized::Block*&&, bool*&&, 0ul, 1ul, 2ul, 3ul>(std::tuple<doris::RuntimeState*&&, doris::vectorized::Block*&&, bool*&&>&&, std::_Index_tuple<0ul, 1ul, 2ul, 3ul>) at /var/local/ldb-toolchain/include/c++/11/functional:572
   18# doris::Status std::_Bind_result<doris::Status, doris::Status (doris::vectorized::AggregationNode::*(doris::vectorized::AggregationNode*, std::_Placeholder<1>, std::_Placeholder<2>, std::_Placeholder<3>))(doris::RuntimeState*, doris::vectorized::Block*, bool*)>::operator()<doris::RuntimeState*, doris::vectorized::Block*, bool*>(doris::RuntimeState*&&, doris::vectorized::Block*&&, bool*&&) at /var/local/ldb-toolchain/include/c++/11/functional:632
   19# doris::Status std::__invoke_impl<doris::Status, std::_Bind_result<doris::Status, doris::Status (doris::vectorized::AggregationNode::*(doris::vectorized::AggregationNode*, std::_Placeholder<1>, std::_Placeholder<2>, std::_Placeholder<3>))(doris::RuntimeState*, doris::vectorized::Block*, bool*)>&, doris::RuntimeState*, doris::vectorized::Block*, bool*>(std::__invoke_other, std::_Bind_result<doris::Status, doris::Status (doris::vectorized::AggregationNode::*(doris::vectorized::AggregationNode*, std::_Placeholder<1>, std::_Placeholder<2>, std::_Placeholder<3>))(doris::RuntimeState*, doris::vectorized::Block*, bool*)>&, doris::RuntimeState*&&, doris::vectorized::Block*&&, bool*&&) at /var/local/ldb-toolchain/include/c++/11/bits/invoke.h:61
   20# std::enable_if<is_invocable_r_v<doris::Status, std::_Bind_result<doris::Status, doris::Status (doris::vectorized::AggregationNode::*(doris::vectorized::AggregationNode*, std::_Placeholder<1>, std::_Placeholder<2>, std::_Placeholder<3>))(doris::RuntimeState*, doris::vectorized::Block*, bool*)>&, doris::RuntimeState*, doris::vectorized::Block*, bool*>, doris::Status>::type std::__invoke_r<doris::Status, std::_Bind_result<doris::Status, doris::Status (doris::vectorized::AggregationNode::*(doris::vectorized::AggregationNode*, std::_Placeholder<1>, std::_Placeholder<2>, std::_Placeholder<3>))(doris::RuntimeState*, doris::vectorized::Block*, bool*)>&, doris::RuntimeState*, doris::vectorized::Block*, bool*>(std::_Bind_result<doris::Status, doris::Status (doris::vectorized::AggregationNode::*(doris::vectorized::AggregationNode*, std::_Placeholder<1>, std::_Placeholder<2>, std::_Placeholder<3>))(doris::RuntimeState*, doris::vectorized::Block*, bool*)>&, doris::RuntimeState*&&, doris::v
 ectorized::Block*&&, bool*&&) at /var/local/ldb-toolchain/include/c++/11/bits/invoke.h:117
   21# std::_Function_handler<doris::Status (doris::RuntimeState*, doris::vectorized::Block*, bool*), std::_Bind_result<doris::Status, doris::Status (doris::vectorized::AggregationNode::*(doris::vectorized::AggregationNode*, std::_Placeholder<1>, std::_Placeholder<2>, std::_Placeholder<3>))(doris::RuntimeState*, doris::vectorized::Block*, bool*)> >::_M_invoke(std::_Any_data const&, doris::RuntimeState*&&, doris::vectorized::Block*&&, bool*&&) at /var/local/ldb-toolchain/include/c++/11/bits/std_function.h:293
   22# std::function<doris::Status (doris::RuntimeState*, doris::vectorized::Block*, bool*)>::operator()(doris::RuntimeState*, doris::vectorized::Block*, bool*) const at /var/local/ldb-toolchain/include/c++/11/bits/std_function.h:561
   23# doris::vectorized::AggregationNode::get_next(doris::RuntimeState*, doris::vectorized::Block*, bool*) at /root/code/incubator-doris/be/src/vec/exec/vaggregation_node.cpp:395
   24# doris::PlanFragmentExecutor::get_vectorized_internal(doris::vectorized::Block**) at /root/code/incubator-doris/be/src/runtime/plan_fragment_executor.cpp:328
   25# doris::PlanFragmentExecutor::open_vectorized_internal() at /root/code/incubator-doris/be/src/runtime/plan_fragment_executor.cpp:277
   26# doris::PlanFragmentExecutor::open() at /root/code/incubator-doris/be/src/runtime/plan_fragment_executor.cpp:235
   27# doris::FragmentExecState::execute() at /root/code/incubator-doris/be/src/runtime/fragment_mgr.cpp:232
   
   **Release version**:
   Produces two lines of results, and the second line is a random value.
   select variance(c_long_decimal) from test.t2
   +-------------------------------+
   | variance(`c_long_decimal`)    |
   +-------------------------------+
   | 1537228672809129301.333333333 |
   |               93879.919628032 |
   +-------------------------------+
   
   select variance(c_long_decimal) from test.t2
   +-------------------------------+
   | variance(`c_long_decimal`)    |
   +-------------------------------+
   | 1537228672809129301.333333333 |
   |                             0 |
   +-------------------------------+
   
   ### What You Expected?
   
   The debug version will not core dump, and the release version will output the correct results.
   
   ### How to Reproduce?
   
   The vectorization execution engine is used to calculate the variance of decimal type.
   
   select variance(c_long_decimal) from test.t2
   
   ### Anything Else?
   
   _No response_
   
   ### Are you willing to submit PR?
   
   - [X] Yes I am willing to submit a PR!
   
   ### Code of Conduct
   
   - [X] I agree to follow this project's [Code of Conduct](https://www.apache.org/foundation/policies/conduct)
   


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: commits-unsubscribe@doris.apache.org.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org


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


[GitHub] [incubator-doris] liaoxin01 commented on issue #9394: [Bug] core dump on variance with decimal type

Posted by GitBox <gi...@apache.org>.
liaoxin01 commented on issue #9394:
URL: https://github.com/apache/incubator-doris/issues/9394#issuecomment-1119204718

   this have fixed in this pr https://github.com/apache/incubator-doris/pull/9119


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: commits-unsubscribe@doris.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org


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


[GitHub] [incubator-doris] liaoxin01 closed issue #9394: [Bug] core dump on variance with decimal type

Posted by GitBox <gi...@apache.org>.
liaoxin01 closed issue #9394: [Bug] core dump on variance with decimal type
URL: https://github.com/apache/incubator-doris/issues/9394


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: commits-unsubscribe@doris.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org


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