Uh oh!
There was an error while loading. Please reload this page.
[improve](ip)improve data type ip for rowstore and trycatch in segment_flusher - #39258
Conversation
doris-robot
commented
Aug 12, 2024
Thank you for your contribution to Apache Doris. Since 2024-03-18, the Document has been moved to doris-website. |
amorynan
commented
Aug 12, 2024
run buildall |
Uh oh!
There was an error while loading. Please reload this page.
doris-robot
commented
Aug 12, 2024
TPC-H: Total hot run time: 39462 ms |
doris-robot
commented
Aug 12, 2024
TPC-DS: Total hot run time: 200999 ms |
doris-robot
commented
Aug 12, 2024
ClickBench: Total hot run time: 30.73 s |
Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
amorynan
commented
Aug 13, 2024
run buildall |
| void DataTypeIPv6SerDe::read_one_cell_from_jsonb(IColumn& column, const JsonbValue* arg) const { | ||
| IPv6 val = 0; | ||
| const auto *str_value = static_cast<const JsonbStringVal*>(arg); |
There was a problem hiding this comment.
warning: 'auto str_value' can be declared as 'const auto *str_value' [readability-qualified-auto]
| constauto *str_value = static_cast<const JsonbStringVal*>(arg); | |
| constauto *str_value = static_cast<const JsonbStringVal*>(arg); |
clang-tidy review says "All clean, LGTM! 👍" |
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
clang-tidy review says "All clean, LGTM! 👍" |
Uh oh!
There was an error while loading. Please reload this page.
doris-robot
commented
Aug 13, 2024
TPC-H: Total hot run time: 39443 ms |
doris-robot
commented
Aug 13, 2024
TPC-DS: Total hot run time: 203514 ms |
doris-robot
commented
Aug 13, 2024
ClickBench: Total hot run time: 30.88 s |
amorynan
commented
Aug 13, 2024
run buildall |
clang-tidy review says "All clean, LGTM! 👍" |
doris-robot
commented
Aug 13, 2024
TPC-H: Total hot run time: 39682 ms |
doris-robot
commented
Aug 13, 2024
TPC-DS: Total hot run time: 189765 ms |
doris-robot
commented
Aug 13, 2024
ClickBench: Total hot run time: 30.67 s |
PR approved by at least one committer and no changes requested. |
PR approved by anyone and no changes requested. |
…t_flusher (apache#39258) before we not support ipv6 with rowstore, and can make coredump like this: ``` terminate called after throwing an instance of 'doris::Exception' what(): [E3] write_one_cell_to_jsonb with type IPv6 *** Query id: e5e020df4ea04a70-95a27c948db5a518 *** *** is nereids: 0 *** *** tablet id: 9008975 *** *** Aborted at 1723184823 (unix time) try "date -d @1723184823" if you are using GNU date *** *** Current BE git commitID: a2baaf3 *** *** SIGABRT unknown detail explain (@0x29f794) received by PID 2750356 (TID 2752049 OR 0x7f6064dec640) from PID 2750356; stack trace: *** 0# doris::signal::(anonymous namespace)::FailureSignalHandler(int, siginfo_t*, void*) at /home/zcp/repo_center/doris_master/doris/be/src/common/signal_handler.h:421 1# 0x00007F6499586520 in /lib/x86_64-linux-gnu/libc.so.6 2# pthread_kill at ./nptl/pthread_kill.c:89 3# raise at ../sysdeps/posix/raise.c:27 4# abort at ./stdlib/abort.c:81 5# __gnu_cxx::__verbose_terminate_handler() [clone .cold] at ../../../../libstdc++-v3/libsupc++/vterminate.cc:75 6# __cxxabiv1::__terminate(void (*)()) at ../../../../libstdc++-v3/libsupc++/eh_terminate.cc:48 7# 0x00005610407949C1 in /mnt/hdd01/PERFORMANCE_ENV/be/lib/doris_be 8# 0x0000561040794B14 in /mnt/hdd01/PERFORMANCE_ENV/be/lib/doris_be 9# doris::vectorized::DataTypeNumberSerDe<unsigned __int128>::write_one_cell_to_jsonb(doris::vectorized::IColumn const&, doris::JsonbWriterT<doris::JsonbOutStream>&, doris::vectorized::Arena*, int, int) const in /mnt/hdd01/PERFORMANCE_ENV/be/lib/doris_be 10# doris::vectorized::JsonbSerializeUtil::block_to_jsonb(doris::TabletSchema const&, doris::vectorized::Block const&, doris::vectorized::ColumnStr<unsigned int>&, int, std::vector<std::shared_ptr<doris::vectorized::DataTypeSerDe>, std::allocator<std::shared_ptr<doris::vectorized::DataTypeSerDe> > > const&, std::unordered_set<int, std::hash<int>, std::equal_to<int>, std::allocator<int> > const&) at /home/zcp/repo_center/doris_master/doris/be/src/vec/jsonb/serialize.cpp:57 11# doris::segment_v2::VerticalSegmentWriter::_serialize_block_to_row_column(doris::vectorized::Block&) at /home/zcp/repo_center/doris_master/doris/be/src/olap/rowset/segment_v2/vertical_segment_writer.cpp:302 12# doris::segment_v2::VerticalSegmentWriter::write_batch() at /home/zcp/repo_center/doris_master/doris/be/src/olap/rowset/segment_v2/vertical_segment_writer.cpp:839 13# doris::SegmentFlusher::_add_rows(std::unique_ptr<doris::segment_v2::VerticalSegmentWriter, std::default_delete<doris::segment_v2::VerticalSegmentWriter> >&, doris::vectorized::Block const*, unsigned long, unsigned long) at /home/zcp/repo_center/doris_master/doris/be/src/olap/rowset/segment_creator.cpp:130 14# doris::SegmentFlusher::flush_single_block(doris::vectorized::Block const*, int, long*) at /home/zcp/repo_center/doris_master/doris/be/src/olap/rowset/segment_creator.cpp:73 15# doris::SegmentCreator::flush_single_block(doris::vectorized::Block const*, int, long*) at /home/zcp/repo_center/doris_master/doris/be/src/olap/rowset/segment_creator.cpp:395 16# doris::BetaRowsetWriterV2::flush_memtable(doris::vectorized::Block*, int, long*) at /home/zcp/repo_center/doris_master/doris/be/src/olap/rowset/beta_rowset_writer_v2.cpp:101 17# doris::FlushToken::_do_flush_memtable(doris::MemTable*, int, long*) at /home/zcp/repo_center/doris_master/doris/be/src/olap/memtable_flush_executor.cpp:148 18# doris::FlushToken::_flush_memtable(std::unique_ptr<doris::MemTable, std::default_delete<doris::MemTable> >, int, long) in /mnt/hdd01/PERFORMANCE_ENV/be/lib/doris_be 19# doris::MemtableFlushTask::run() at /home/zcp/repo_center/doris_master/doris/be/src/olap/memtable_flush_executor.cpp:63 20# doris::ThreadPool::dispatch_thread() in /mnt/hdd01/PERFORMANCE_ENV/be/lib/doris_be 21# doris::Thread::supervise_thread(void*) at /home/zcp/repo_center/doris_master/doris/be/src/util/thread.cpp:499 22# start_thread at ./nptl/pthread_create.c:442 23# 0x00007F649966A850 at ../sysdeps/unix/sysv/linux/x86_64/clone3.S:83 ```
## Proposed changes backport: #39258 Issue Number: close #xxx <!--Describe your changes.-->
…t_flusher (#39258) before we not support ipv6 with rowstore, and can make coredump like this: ``` terminate called after throwing an instance of 'doris::Exception' what(): [E3] write_one_cell_to_jsonb with type IPv6 *** Query id: e5e020df4ea04a70-95a27c948db5a518 *** *** is nereids: 0 *** *** tablet id: 9008975 *** *** Aborted at 1723184823 (unix time) try "date -d @1723184823" if you are using GNU date *** *** Current BE git commitID: a2baaf3 *** *** SIGABRT unknown detail explain (@0x29f794) received by PID 2750356 (TID 2752049 OR 0x7f6064dec640) from PID 2750356; stack trace: *** 0# doris::signal::(anonymous namespace)::FailureSignalHandler(int, siginfo_t*, void*) at /home/zcp/repo_center/doris_master/doris/be/src/common/signal_handler.h:421 1# 0x00007F6499586520 in /lib/x86_64-linux-gnu/libc.so.6 2# pthread_kill at ./nptl/pthread_kill.c:89 3# raise at ../sysdeps/posix/raise.c:27 4# abort at ./stdlib/abort.c:81 5# __gnu_cxx::__verbose_terminate_handler() [clone .cold] at ../../../../libstdc++-v3/libsupc++/vterminate.cc:75 6# __cxxabiv1::__terminate(void (*)()) at ../../../../libstdc++-v3/libsupc++/eh_terminate.cc:48 7# 0x00005610407949C1 in /mnt/hdd01/PERFORMANCE_ENV/be/lib/doris_be 8# 0x0000561040794B14 in /mnt/hdd01/PERFORMANCE_ENV/be/lib/doris_be 9# doris::vectorized::DataTypeNumberSerDe<unsigned __int128>::write_one_cell_to_jsonb(doris::vectorized::IColumn const&, doris::JsonbWriterT<doris::JsonbOutStream>&, doris::vectorized::Arena*, int, int) const in /mnt/hdd01/PERFORMANCE_ENV/be/lib/doris_be 10# doris::vectorized::JsonbSerializeUtil::block_to_jsonb(doris::TabletSchema const&, doris::vectorized::Block const&, doris::vectorized::ColumnStr<unsigned int>&, int, std::vector<std::shared_ptr<doris::vectorized::DataTypeSerDe>, std::allocator<std::shared_ptr<doris::vectorized::DataTypeSerDe> > > const&, std::unordered_set<int, std::hash<int>, std::equal_to<int>, std::allocator<int> > const&) at /home/zcp/repo_center/doris_master/doris/be/src/vec/jsonb/serialize.cpp:57 11# doris::segment_v2::VerticalSegmentWriter::_serialize_block_to_row_column(doris::vectorized::Block&) at /home/zcp/repo_center/doris_master/doris/be/src/olap/rowset/segment_v2/vertical_segment_writer.cpp:302 12# doris::segment_v2::VerticalSegmentWriter::write_batch() at /home/zcp/repo_center/doris_master/doris/be/src/olap/rowset/segment_v2/vertical_segment_writer.cpp:839 13# doris::SegmentFlusher::_add_rows(std::unique_ptr<doris::segment_v2::VerticalSegmentWriter, std::default_delete<doris::segment_v2::VerticalSegmentWriter> >&, doris::vectorized::Block const*, unsigned long, unsigned long) at /home/zcp/repo_center/doris_master/doris/be/src/olap/rowset/segment_creator.cpp:130 14# doris::SegmentFlusher::flush_single_block(doris::vectorized::Block const*, int, long*) at /home/zcp/repo_center/doris_master/doris/be/src/olap/rowset/segment_creator.cpp:73 15# doris::SegmentCreator::flush_single_block(doris::vectorized::Block const*, int, long*) at /home/zcp/repo_center/doris_master/doris/be/src/olap/rowset/segment_creator.cpp:395 16# doris::BetaRowsetWriterV2::flush_memtable(doris::vectorized::Block*, int, long*) at /home/zcp/repo_center/doris_master/doris/be/src/olap/rowset/beta_rowset_writer_v2.cpp:101 17# doris::FlushToken::_do_flush_memtable(doris::MemTable*, int, long*) at /home/zcp/repo_center/doris_master/doris/be/src/olap/memtable_flush_executor.cpp:148 18# doris::FlushToken::_flush_memtable(std::unique_ptr<doris::MemTable, std::default_delete<doris::MemTable> >, int, long) in /mnt/hdd01/PERFORMANCE_ENV/be/lib/doris_be 19# doris::MemtableFlushTask::run() at /home/zcp/repo_center/doris_master/doris/be/src/olap/memtable_flush_executor.cpp:63 20# doris::ThreadPool::dispatch_thread() in /mnt/hdd01/PERFORMANCE_ENV/be/lib/doris_be 21# doris::Thread::supervise_thread(void*) at /home/zcp/repo_center/doris_master/doris/be/src/util/thread.cpp:499 22# start_thread at ./nptl/pthread_create.c:442 23# 0x00007F649966A850 at ../sysdeps/unix/sysv/linux/x86_64/clone3.S:83 ```
…t_flusher (apache#39258) before we not support ipv6 with rowstore, and can make coredump like this: ``` terminate called after throwing an instance of 'doris::Exception' what(): [E3] write_one_cell_to_jsonb with type IPv6 *** Query id: e5e020df4ea04a70-95a27c948db5a518 *** *** is nereids: 0 *** *** tablet id: 9008975 *** *** Aborted at 1723184823 (unix time) try "date -d @1723184823" if you are using GNU date *** *** Current BE git commitID: a2baaf3 *** *** SIGABRT unknown detail explain (@0x29f794) received by PID 2750356 (TID 2752049 OR 0x7f6064dec640) from PID 2750356; stack trace: *** 0# doris::signal::(anonymous namespace)::FailureSignalHandler(int, siginfo_t*, void*) at /home/zcp/repo_center/doris_master/doris/be/src/common/signal_handler.h:421 1# 0x00007F6499586520 in /lib/x86_64-linux-gnu/libc.so.6 2# pthread_kill at ./nptl/pthread_kill.c:89 3# raise at ../sysdeps/posix/raise.c:27 4# abort at ./stdlib/abort.c:81 5# __gnu_cxx::__verbose_terminate_handler() [clone .cold] at ../../../../libstdc++-v3/libsupc++/vterminate.cc:75 6# __cxxabiv1::__terminate(void (*)()) at ../../../../libstdc++-v3/libsupc++/eh_terminate.cc:48 7# 0x00005610407949C1 in /mnt/hdd01/PERFORMANCE_ENV/be/lib/doris_be 8# 0x0000561040794B14 in /mnt/hdd01/PERFORMANCE_ENV/be/lib/doris_be 9# doris::vectorized::DataTypeNumberSerDe<unsigned __int128>::write_one_cell_to_jsonb(doris::vectorized::IColumn const&, doris::JsonbWriterT<doris::JsonbOutStream>&, doris::vectorized::Arena*, int, int) const in /mnt/hdd01/PERFORMANCE_ENV/be/lib/doris_be 10# doris::vectorized::JsonbSerializeUtil::block_to_jsonb(doris::TabletSchema const&, doris::vectorized::Block const&, doris::vectorized::ColumnStr<unsigned int>&, int, std::vector<std::shared_ptr<doris::vectorized::DataTypeSerDe>, std::allocator<std::shared_ptr<doris::vectorized::DataTypeSerDe> > > const&, std::unordered_set<int, std::hash<int>, std::equal_to<int>, std::allocator<int> > const&) at /home/zcp/repo_center/doris_master/doris/be/src/vec/jsonb/serialize.cpp:57 11# doris::segment_v2::VerticalSegmentWriter::_serialize_block_to_row_column(doris::vectorized::Block&) at /home/zcp/repo_center/doris_master/doris/be/src/olap/rowset/segment_v2/vertical_segment_writer.cpp:302 12# doris::segment_v2::VerticalSegmentWriter::write_batch() at /home/zcp/repo_center/doris_master/doris/be/src/olap/rowset/segment_v2/vertical_segment_writer.cpp:839 13# doris::SegmentFlusher::_add_rows(std::unique_ptr<doris::segment_v2::VerticalSegmentWriter, std::default_delete<doris::segment_v2::VerticalSegmentWriter> >&, doris::vectorized::Block const*, unsigned long, unsigned long) at /home/zcp/repo_center/doris_master/doris/be/src/olap/rowset/segment_creator.cpp:130 14# doris::SegmentFlusher::flush_single_block(doris::vectorized::Block const*, int, long*) at /home/zcp/repo_center/doris_master/doris/be/src/olap/rowset/segment_creator.cpp:73 15# doris::SegmentCreator::flush_single_block(doris::vectorized::Block const*, int, long*) at /home/zcp/repo_center/doris_master/doris/be/src/olap/rowset/segment_creator.cpp:395 16# doris::BetaRowsetWriterV2::flush_memtable(doris::vectorized::Block*, int, long*) at /home/zcp/repo_center/doris_master/doris/be/src/olap/rowset/beta_rowset_writer_v2.cpp:101 17# doris::FlushToken::_do_flush_memtable(doris::MemTable*, int, long*) at /home/zcp/repo_center/doris_master/doris/be/src/olap/memtable_flush_executor.cpp:148 18# doris::FlushToken::_flush_memtable(std::unique_ptr<doris::MemTable, std::default_delete<doris::MemTable> >, int, long) in /mnt/hdd01/PERFORMANCE_ENV/be/lib/doris_be 19# doris::MemtableFlushTask::run() at /home/zcp/repo_center/doris_master/doris/be/src/olap/memtable_flush_executor.cpp:63 20# doris::ThreadPool::dispatch_thread() in /mnt/hdd01/PERFORMANCE_ENV/be/lib/doris_be 21# doris::Thread::supervise_thread(void*) at /home/zcp/repo_center/doris_master/doris/be/src/util/thread.cpp:499 22# start_thread at ./nptl/pthread_create.c:442 23# 0x00007F649966A850 at ../sysdeps/unix/sysv/linux/x86_64/clone3.S:83 ```
Proposed changes
before we not support ipv6 with rowstore, and can make coredump like this:
Issue Number: close #xxx