StarRocks / starrocks

The world's fastest open query engine for sub-second analytics both on and off the data lakehouse. With the flexibility to support nearly any scenario, StarRocks provides best-in-class performance for multi-dimensional analytics, real-time analytics, and ad-hoc queries. A Linux Foundation project.
https://starrocks.io
Apache License 2.0
8.83k stars 1.77k forks source link

BE crash when pipeline opened #3995

Closed tiannan-sr closed 2 years ago

tiannan-sr commented 2 years ago

Steps to reproduce the behavior (Required)

  1. CREATE TABLE: create tpcds tables and with 1G data

  2. BE crash while running sqlsmith: Aborted at 1646911892 (unix time) try "date -d @1646911892" if you are using GNU date PC: @ 0x7f51e1534387 GI_raise SIGABRT (@0x3f700003738) received by PID 14136 (TID 0x7f516a514700) from PID 14136; stack trace: @ 0x3c17202 google::(anonymous namespace)::FailureSignalHandler() @ 0x7f51e1fe9630 (unknown) @ 0x7f51e1534387 __GI_raise @ 0x7f51e1535a78 GI_abort @ 0x177d4f7 _ZN9gnu_cxx27verbose_terminate_handlerEv.cold @ 0x551fba6 cxxabiv1::terminate() @ 0x551fc11 std::terminate() @ 0x551fd64 cxa_throw @ 0x177f0db std::throw_length_error() @ 0x187a9b1 starrocks::vectorized::FixedLengthColumnBase<>::resize() @ 0x227f0ba starrocks::vectorized::NullableColumn::resize() @ 0x2271633 starrocks::vectorized::Chunk::set_num_rows() @ 0x23aaaee starrocks::Analytor::output_result_chunk() @ 0x26027aa starrocks::pipeline::AnalyticSinkOperator::_process_by_partition_if_necessary() @ 0x2602ed0 starrocks::pipeline::AnalyticSinkOperator::push_chunk() @ 0x25c051b starrocks::pipeline::PipelineDriver::process() @ 0x25b6c2e starrocks::pipeline::GlobalDriverExecutor::worker_thread() @ 0x1f0f5f9 starrocks::ThreadPool::dispatch_thread() @ 0x1f0b1aa starrocks::Thread::supervise_thread() @ 0x7f51e1fe1ea5 start_thread @ 0x7f51e15fc8dd __clone

Expected behavior (Required)

return the right result

Real behavior (Required)

BE crash

StarRocks version (Required)

tiannan-sr commented 2 years ago

select ref_1.ss_wholesale_cost as c0, ref_3.cs_ext_ship_cost as c1, random() as c2, cast(coalesce(ref_0.hd_vehicle_count, ref_3.cs_bill_cdemo_sk) as INT) as c3, max( cast(ref_3.cs_bill_addr_sk as INT)) over (partition by ref_3.cs_ext_sales_price,ref_3.cs_ext_discount_amt,ref_3.cs_net_paid order by ref_0.hd_income_band_sk) as c4, ref_3.cs_sales_price as c5, ref_1.ss_sold_date_sk as c6, avg( cast(ref_1.ss_promo_sk as INT)) over (partition by ref_1.ss_net_paid_inc_tax,ref_3.cs_order_number order by ref_2.wp_customer_sk) as c7, ref_1.ss_cdemo_sk as c8, 30 as c9, pi() as c10, ref_3.cs_bill_addr_sk as c11 from tpcds_1g.household_demographics as ref_0 inner join tpcds_1g.store_sales as ref_1 on (ref_0.hd_vehicle_count = ref_1.ss_item_sk ) left join tpcds_1g.web_page as ref_2 on (ref_1.ss_quantity = ref_2.wp_web_page_sk ) right join tpcds_1g.catalog_sales as ref_3 on (ref_1.ss_net_profit = ref_3.cs_wholesale_cost ) where cast(coalesce(ref_0.hd_buy_potential, ref_2.wp_url) as VARCHAR) >= ref_2.wp_web_page_id limit 170;