7851563829
[fix](brpc_client_cache) resolve hostname in DNS cache before passing to brpc ( #40074 ) ( #40786 )
...
backport #40074
2024-09-13 14:28:01 +08:00
3395cd5ce9
[PipelineX](improvement) Prepare tasks in parallel ( #40270 )
...
## Proposed changes
Issue Number: close #xxx
<!--Describe your changes.-->
2024-09-13 13:34:29 +08:00
1e47d11560
[Improvement](runtime-filter) send RUNTIME_BLOOM_FILTER_MAX_SIZE to backends ( #39686 )
...
…ackends (#38972 )
## Proposed changes
pick from #38972
2024-08-22 00:37:25 +08:00
5e91fc6a8f
[Bug](runtime-filter) set inited to true on BloomFilterFuncBase::assi… ( #39674 )
...
…gn (#39335 )
## Proposed changes
pick from #39335
2024-08-22 00:29:16 +08:00
677435cef8
[Pick](Branch-2.1) pick json reader fix and support specify $. as column ( #39271 )
...
#39206
#38213
2024-08-13 17:44:45 +08:00
96260d97bd
[fix](ub) undefined behavior in FixedContainer ( #39191 ) ( #39201 )
...
## Proposed changes
pick #39191
Undefined behavior occurs if there is a null value in the list.
```
/root/doris/be/src/vec/common/string_ref.h:271:54: runtime error: null pointer passed as argument 2, which is declared to never be null
/var/local/ldb-toolchain/bin/../usr/include/string.h:64:33: note: nonnull attribute specified here
#0 0x5616d072245d in doris::StringRef::eq(doris::StringRef const&) const /root/doris/be/src/vec/common/string_ref.h:271:41
#1 0x5616d072245d in doris::StringRef::operator==(doris::StringRef const&) const /root/doris/be/src/vec/common/string_ref.h:274:60
#2 0x5616d072245d in doris::FixedContainer::find(doris::StringRef const&) const /root/doris/be/src/exprs/hybrid_set.h:76:36
#3 0x5616d072245d in void doris::StringValueSet>::_find_batch(doris::vectorized::IColumn const&, unsigned long, doris::vectorized::PODArray, 16ul, 15ul> const*, doris::vectorized::PODArray, 16ul, 15ul>&) /root/doris/be/src/exprs/hybrid_set.h:688:63
#4 0x5616d0747857 in doris::vectorized::FunctionIn::execute_impl(doris::FunctionContext*, doris::vectorized::Block&, std::vector> const&, unsigned long, unsigned long) const /root/doris/be/src/vec/functions/in.h:170:21
#5 0x5616c741fa3a in doris::vectorized::DefaultExecutable::execute_impl(doris::FunctionContext*, doris::vectorized::Block&, std::vector> const&, unsigned long, unsigned long) const /root/doris/be/src/vec/functions/function.h:462:26
#6 0x5616cbb5b650 in doris::vectorized::PreparedFunctionImpl::_execute_skipped_constant_deal(doris::FunctionContext*, doris::vectorized::Block&, std::vector> const&, unsigned long, unsigned long, bool) const /root/doris/be/src/vec/functions/function.cpp
#7 0x5616cbb4e14e in doris::vectorized::PreparedFunctionImpl::execute_without_low_cardinality_columns(doris::FunctionContext*, doris::vectorized::Block&, std::vector> const&, unsigned long, unsigned long, bool) const /root/doris/be/src/vec/functions/function.cpp:244:12
#8 0x5616cbb4e3c2 in doris::vectorized::PreparedFunctionImpl::execute(doris::FunctionContext*, doris::vectorized::Block&, std::vector> const&, unsigned long, unsigned long, bool) const /root/doris/be/src/vec/functions/function.cpp:250:12
#9 0x5616c741cd68 in doris::vectorized::IFunctionBase::execute(doris::FunctionContext*, doris::vectorized::Block&, std::vector> const&, unsigned long, unsigned long, bool) const /root/doris/be/src/vec/functions/function.h:190:19
#10 0x5616c74cf712 in doris::vectorized::VInPredicate::execute(doris::vectorized::VExprContext*, doris::vectorized::Block*, int*) /root/doris/be/src/vec/exprs/vin_predicate.cpp:130:5
#11 0x5616c740d5c0 in doris::vectorized::VectorizedFnCall::_do_execute(doris::vectorized::VExprContext*, doris::vectorized::Block*, int*, std::vector>&) /root/doris/be/src/vec/exprs/vectorized_fn_call.cpp:183:9
#12 0x5616c740ecf5 in doris::vectorized::VectorizedFnCall::execute(doris::vectorized::VExprContext*, doris::vectorized::Block*, int*) /root/doris/be/src/vec/exprs/vectorized_fn_call.cpp:215:12
#13 0x5616c7462e24 in doris::vectorized::VCompoundPred::execute(doris::vectorized::VExprContext*, doris::vectorized::Block*, int*) /root/doris/be/src/vec/exprs/vcompound_pred.h:127:38
#14 0x5616c74bccec in doris::vectorized::VExprContext::execute(doris::vectorized::Block*, int*) /root/doris/be/src/vec/exprs/vexpr_context.cpp:54:5
#15 0x5616c74c1dcc in doris::vectorized::VExprContext::execute_conjuncts(std::vector, std::allocator>> const&, std::vector, 16ul, 15ul>, std::allocator, 16ul, 15ul>>> const*, bool, doris::vectorized::Block*, doris::vectorized::PODArray, 16ul, 15ul>, bool) /root/doris/be/src/vec/exprs/vexpr_context.cpp:169:9
#16 0x5616c74c5108 in doris::vectorized::VExprContext::execute_conjuncts_and_filter_block(std::vector, std::allocator>> const&, doris::vectorized::Block*, std::vector>&, int, doris::vectorized::PODArray, 16ul, 15ul>&) /root/doris/be/src/vec/exprs/vexpr_context.cpp:322:5
#17 0x5616ad8a7f1a in doris::segment_v2::SegmentIterator::_execute_common_expr(unsigned short*, unsigned short&, doris::vectorized::Block*) /root/doris/be/src/olap/rowset/segment_v2/segment_iterator.cpp:2680:5
#18 0x5616ad89e86e in doris::segment_v2::SegmentIterator::_next_batch_internal(doris::vectorized::Block*) /root/doris/be/src/olap/rowset/segment_v2/segment_iterator.cpp:2582:25
#19 0x5616ad892f5c in doris::segment_v2::SegmentIterator::next_batch(doris::vectorized::Block*)::$_0::operator()() const /root/doris/be/src/olap/rowset/segment_v2/segment_iterator.cpp:2315:9
#20 0x5616ad892f5c in doris::segment_v2::SegmentIterator::next_batch(doris::vectorized::Block*) /root/doris/be/src/olap/rowset/segment_v2/segment_iterator.cpp:2314:19
#21 0x5616ad6dd9cc in doris::segment_v2::LazyInitSegmentIterator::next_batch(doris::vectorized::Block*) /root/doris/be/src/olap/rowset/segment_v2/lazy_init_segment_iterator.h:44:33
#22 0x5616ad269d67 in doris::BetaRowsetReader::next_block(doris::vectorized::Block*) /root/doris/be/src/olap/rowset/beta_rowset_reader.cpp:380:29
#23 0x5616de6de110 in doris::vectorized::VCollectIterator::Level0Iterator::_refresh() /root/doris/be/src/vec/olap/vcollect_iterator.h
#24 0x5616de6c967f in doris::vectorized::VCollectIterator::Level0Iterator::refresh_current_row() /root/doris/be/src/vec/olap/vcollect_iterator.cpp:514:24
#25 0x5616de6ca8a6 in doris::vectorized::VCollectIterator::Level0Iterator::ensure_first_row_ref() /root/doris/be/src/vec/olap/vcollect_iterator.cpp:493:14
#26 0x5616de6d7008 in doris::vectorized::VCollectIterator::Level1Iterator::ensure_first_row_ref() /root/doris/be/src/vec/olap/vcollect_iterator.cpp:692:27
#27 0x5616de6bd200 in doris::vectorized::VCollectIterator::build_heap(std::vector, std::allocator>>&) /root/doris/be/src/vec/olap/vcollect_iterator.cpp:186:9
#28 0x5616de651b6c in doris::vectorized::BlockReader::_init_collect_iter(doris::TabletReader::ReaderParams const&) /root/doris/be/src/vec/olap/block_reader.cpp:157:5
#29 0x5616de65526f in doris::vectorized::BlockReader::init(doris::TabletReader::ReaderParams const&) /root/doris/be/src/vec/olap/block_reader.cpp:229:19
#30 0x5616e175a0f9 in doris::vectorized::NewOlapScanner::open(doris::RuntimeState*) /root/doris/be/src/vec/exec/scan/new_olap_scanner.cpp:237:32
#31 0x5616c736ad34 in doris::vectorized::ScannerScheduler::_scanner_scan(std::shared_ptr, std::shared_ptr) /root/doris/be/src/vec/exec/scan/scanner_scheduler.cpp:236:5
#32 0x5616c736f05e in doris::vectorized::ScannerScheduler::submit(std::shared_ptr, std::shared_ptr)::$_1::operator()() const::'lambda'()::operator()() const::'lambda'()::operator()() const /root/doris/be/src/vec/exec/scan/scanner_scheduler.cpp:176:21
#33 0x5616c736f05e in doris::vectorized::ScannerScheduler::submit(std::shared_ptr, std::shared_ptr)::$_1::operator()() const::'lambda'()::operator()() const /root/doris/be/src/vec/exec/scan/scanner_scheduler.cpp:175:31
#34 0x5616c736f05e in void std::_invoke_impl, std::shared_ptr)::$_1::operator()() const::'lambda'()&>(std::_invoke_other, doris::vectorized::ScannerScheduler::submit(std::shared_ptr, std::shared_ptr)::$_1::operator()() const::'lambda'()&) /var/local/ldb-toolchain/bin/../lib/gcc/x86_64-linux-gnu/11/../../../../include/c++/11/bits/invoke.h:61:14
#35 0x5616c736f05e in std::enable_if, std::shared_ptr)::$1::operator()() const::'lambda'()&>, void>::type std::_invoke_r, std::shared_ptr)::$_1::operator()() const::'lambda'()&>(doris::vectorized::ScannerScheduler::submit(std::shared_ptr, std::shared_ptr)::$_1::operator()() const::'lambda'()&) /var/local/ldb-toolchain/bin/../lib/gcc/x86_64-linux-gnu/11/../../../../include/c++/11/bits/invoke.h:111:2
#36 0x5616c736f05e in std::_Function_handler, std::shared_ptr)::$_1::operator()() const::'lambda'()>::_M_invoke(std::_Any_data const&) /var/local/ldb-toolchain/bin/../lib/gcc/x86_64-linux-gnu/11/../../../../include/c++/11/bits/std_function.h:291:9
#37 0x5616aeed6a3b in doris::ThreadPool::dispatch_thread() /root/doris/be/src/util/threadpool.cpp:543:24
#38 0x5616aeeae4f7 in doris::Thread::supervise_thread(void*) /root/doris/be/src/util/thread.cpp:498:5
#39 0x7f7e663e3ac2 in start_thread nptl/pthread_create.c:442:8
#40 0x7f7e6647584f misc/../sysdeps/unix/sysv/linux/x86_64/clone3.S:81
SUMMARY: UndefinedBehaviorSanitizer: undefined-behavior /root/doris/be/src/vec/common/string_ref.h:271:54 in
```
## Proposed changes
Issue Number: close #xxx
<!--Describe your changes.-->
2024-08-12 10:02:07 +08:00
28998300d4
[Bug](fix) fix ubsan use int32_t pointer access bool value ( #38621 )
...
## Proposed changes
Issue Number: close #38617
<!--Describe your changes.-->
2024-08-01 13:52:12 +08:00
c93f3bd24e
[Improvement](bloom filter) Forbid small bloom filter ( #38349 ) ( #38392 )
...
Bloom filter has a expected filter ratio when data is enough. This PR
forbid too small bloom filter which has a big bias for filter ratio.
pick #38349
2024-07-26 10:11:31 +08:00
4b31e52b24
[enhancement](runtimefilter) fix potential core in runtime filter sync filter size ( #38058 ) ( #38093 )
...
pick #38058
## Proposed changes
IRuntimeFilter maybe deconstructed before the rpc finished, so that
could not use a raw pointer in closure. Has to use the context's shared
ptr.
---------
## Proposed changes
Issue Number: close #xxx
<!--Describe your changes.-->
Co-authored-by: yiguolei <yiguolei@gmail.com >
2024-07-18 23:11:26 +08:00
e2c2702dff
[Bug](runtime-filter) fix some rf error problems ( #37155 )
...
## Proposed changes
pick from #37273
2024-07-04 20:03:46 +08:00
70e1c563b3
[Chore](runtime-filter) enlarge sync filter size rpc timeout limit ( #37103 ) ( #37225 )
...
pick from #37103
2024-07-03 21:02:26 +08:00
cb80ae906f
[Bug](runtime-filter) disable sync filter when pipeline engine is off ( #36994 )
...
## Proposed changes
1. disable sync filter when pipeline engine is off
2. reduce some warning log
2024-06-28 16:59:26 +08:00
db2721915e
[Bug](runtime-filter) release dependency when rf rpc failed or meet error status ( #36297 )
...
pick from #36126
2024-06-14 23:44:08 +08:00
e962a7309b
[Chore](runtime-filter) adjust some check and error msg on runtime filter ( #35018 ) ( #35251 )
...
adjust some check and error msg on runtime filter
2024-05-23 11:20:02 +08:00
84f7bfffe2
[Bug](bitmap-filter) fix empty bitmap when rf do merge ( #34182 )
...
fix empty bitmap when rf do merge
2024-05-22 14:29:50 +08:00
8ca399ab92
[exec](pipeline) runtime filter wait time ( #35108 )
2024-05-21 12:50:05 +08:00
0d106fe4c2
[Bug](runtime-filter) release rf count dependency when query canceled ( #34367 )
...
* release rf count dependency when query canceled
* update
* update
2024-05-02 09:56:17 +08:00
7fbca522b7
[Bug](runtime-filter) fix bloom filter size error on rf merge ( #34082 )
...
fix bloom filter size error on rf merge
W20240424 11:28:56.826277 3494287 ref_count_closure.h:80] RPC meet error status: [INVALID_ARGUMENT]PStatus: (172.21.0.15)[INVALID_ARGUMENT]bloom filter size not the same: already allocated bytes 65536, expected allocated bytes 32768
2024-04-26 07:41:56 +08:00
25358564ca
[Fix](compile) Fix gcc compile on master ( #33864 )
...
This is imported by #33511 . wrongly used
ColumnStr<T> ();
which violate C++20 standard(see https://wg21.cmeerw.net/cwg/issue2237 ) but still supported by clang up until now(see llvm/llvm-project#58112 )
2024-04-19 23:41:37 +08:00
175e85d616
[Bug](runtime-filter) fix coredump on no null string type rf ( #33869 )
...
fix coredump on no null string type rf
2024-04-19 15:03:06 +08:00
1300317723
[Exec](join) Support column string64 to avoid join failed in string size overflow the uint32 ( #33511 ) ( #33850 )
2024-04-18 19:43:08 +08:00
9bcb23351c
[Improvement](runtime-filter) make sync rf size work when need_local_merge ( #33717 )
...
make sync rf size work when need_local_merge
2024-04-17 23:42:14 +08:00
690bf54346
[runtime filter](fix) Fix wrong results caused by IN_OR_BLOOM filter ( #33701 ) ( #33715 )
2024-04-17 23:42:12 +08:00
918f7225b4
[Bug](runtime-filter) make need_local_merge unrelated with broadcast and support merge on bitmap_filter ( #33664 )
2024-04-17 23:42:12 +08:00
3081fc584d
[Improvement](runtime-filter) support sync join node build side's size to init bloom runtime filter ( #32180 )
...
support sync join node build side's size to init bloom runtime filter
2024-04-11 09:31:50 +08:00
6412753517
[improve](exec) reduce copy on store_string_ref ( #33232 )
2024-04-10 16:00:12 +08:00
8fd6d4c41b
[Chore](build) add -Wconversion and remove some unused code ( #33127 )
...
add -Wconversion and remove some unused code
2024-04-10 15:26:08 +08:00
a8232c67f9
[pipelineX](runtime filter) Fix task timeout caused by runtime filter ( #33332 ) ( #33369 )
2024-04-08 16:30:32 +08:00
05a84bd485
[Bug](runtime-filter) set need_local_merge to false when rf is broadcast ( #33211 )
...
set need_local_merge to false when rf is broadcast
2024-04-03 19:14:09 +08:00
34f5521643
[Bug](min-max) store string data in MinMaxNumFunc to avoid use after free when cancel ( #33152 )
...
* store string data in MinMaxNumFunc to avoid use after free when cancel
* update
2024-04-02 22:35:58 +08:00
b6a35d68b0
[code](Refactor) Del unless filter id in runtime filter func ( #32502 )
...
Del unless filter id in runtime filter func
2024-03-21 14:07:49 +08:00
6ea8e51261
[Performance](join) speed up the colocate and bucket shuffle join by change rf size ( #32421 )
2024-03-21 14:07:24 +08:00
b66840efd7
[Fix](regression test) Fix <=> rf cause regresion test failed ( #32377 )
2024-03-21 14:07:23 +08:00
9c1888e7ec
[RuntimeFilter](exec) support min max runtime filter and do refactor ( #32210 )
2024-03-15 18:06:20 +08:00
c8f3643890
[exec](runtimefilter) support null aware in runtime filter ( #32152 )
...
null aware in runtime filter
2024-03-15 18:05:13 +08:00
847ec368be
[Fix](smooth-upgrade) Fix incompatibility when upgrade from 2.0 to 2.1 ( #32220 )
2024-03-14 11:23:05 +08:00
b0b7161ad0
[feature](rf) add filter info profile when rf run as expr ( #31822 )
2024-03-12 14:17:48 +08:00
2470634859
[RuntimeFilter] fix <=> runtime filter failed bug ( #32003 )
2024-03-12 14:13:13 +08:00
231768db0d
[Performance](exec) Support runtime filter in <=> join ( #31754 )
2024-03-06 13:06:26 +08:00
b248d3a27e
[Refactor](rf) Refactor the rf code interface to remove update filter v1 ( #31643 )
2024-03-02 17:12:49 +08:00
d8b9909675
[Fix](Status) Handle returned Status correctly #31434
2024-03-01 04:25:43 +08:00
52c45e38af
[Refactor](RF) refactor the profile of rf and pipeline-x support local ignore ( #31287 )
...
* [Refactor](RF) refactor the profile of rf and pipeline-x support local ignore
* fix local merge filter
2024-02-23 19:05:06 +08:00
c56cb0ac3e
[Exec](RF) Support merge remote rf local first ( #31067 )
2024-02-22 13:01:48 +08:00
278b232e76
[Bug](json reader) object should stop processing when encounter error ( #31159 )
...
If DATA_QUALITY_ERROR encountered we should stop processing this document any more.Otherwise there will be UB in simdjson.
2024-02-21 13:53:32 +08:00
a3c78dd21a
[chore](refactor) refactor some rf code and delete rpc file ( #31031 )
...
---------
Co-authored-by: yiguolei <yiguolei@gmail.com >
2024-02-18 11:50:17 +08:00
45b4189bb6
[Refactor](opt) Opt rf and remove unless code ( #30900 )
...
Opt rf and remove unless code
2024-02-18 11:50:16 +08:00
2573150f6d
[refactor](runtime filter) do not wait runtime filter rpc finished when hash node or pipeline finished ( #30970 )
...
Co-authored-by: yiguolei <yiguolei@gmail.com >
2024-02-16 10:16:40 +08:00
02c37b8ead
opt the rf code and remove rf unless code ( #30861 )
2024-02-16 10:12:24 +08:00
0f47f7f389
[Feature](runtime filter) normalize ignore runtime filter ( #30152 )
...
normalize ignore runtime filter
2024-02-03 20:24:39 +08:00
711b156a78
[Refactor][Rf] remove unless code in RF ( #30597 )
2024-01-31 23:53:40 +08:00