Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[Fix](Status) Handle status code correctly and add a new error code ENTRY_NOT_FOUND #24139

Merged
merged 3 commits into from
Sep 11, 2023

Conversation

bobhan1
Copy link
Contributor

@bobhan1 bobhan1 commented Sep 9, 2023

Proposed changes

coredump:

0# doris::signal::(anonymous namespace)::FailureSignalHandler(int, siginfo_t*, void*) at /home/zcp/repo_center/doris_branch-2.0/doris/be/src/common/signal_handler.h:413
1# 0x00007F7902A1C090 in /lib/x86_64-linux-gnu/libc.so.6
2# raise at ../sysdeps/unix/sysv/linux/raise.c:51
3# abort at /build/glibc-SzIz7B/glibc-2.31/stdlib/abort.c:81
4# 0x0000556C9A5AEC69 in /mnt/hdd01/ci/branch20-deploy/be/lib/doris_be
5# 0x0000556C9A5A427D in /mnt/hdd01/ci/branch20-deploy/be/lib/doris_be
6# google::LogMessage::SendToLog() in /mnt/hdd01/ci/branch20-deploy/be/lib/doris_be
7# google::LogMessage::Flush() in /mnt/hdd01/ci/branch20-deploy/be/lib/doris_be
8# google::LogMessageFatal::~LogMessageFatal() in /mnt/hdd01/ci/branch20-deploy/be/lib/doris_be
9# doris::Tablet::calc_segment_delete_bitmap(std::shared_ptr, std::shared_ptr const&, std::vector<std::shared_ptr, std::allocator<std::shared_ptr > > const&, std::shared_ptr, long, doris::RowsetWriter*) in /mnt/hdd01/ci/branch20-deploy/be/lib/doris_be
10# doris::Tablet::calc_delete_bitmap(std::shared_ptr, std::vector<std::shared_ptr, std::allocator<std::shared_ptr > > const&, std::vector<std::shared_ptr, std::allocator<std::shared_ptr > > const&, std::shared_ptr, long, doris::CalcDeleteBitmapToken*, doris::RowsetWriter*) at /home/zcp/repo_center/doris_branch-2.0/doris/be/src/olap/tablet.cpp:3081
11# doris::MemTable::_generate_delete_bitmap(int) at /home/zcp/repo_center/doris_branch-2.0/doris/be/src/olap/memtable.cpp:480
12# doris::MemTable::_do_flush()::$_0::operator()(unsigned long) const at /home/zcp/repo_center/doris_branch-2.0/doris/be/src/olap/memtable.cpp:535
13# doris::Status std::_invoke_impl<doris::status, doris::memtable::_do_flush()::$_0&,="" int="">(std::_invoke_other, doris::MemTable::_do_flush()::$_0&, int&&) at /var/local/ldb_toolchain/bin/../lib/gcc/x86_64-linux-gnu/11/../../../../include/c++/11/bits/invoke.h:61
14# std::enable_if<is_invocable_r_v<doris::status, doris::memtable::do_flush()::$_0&,="" int="">, doris::Status>::type std::_invoke_r<doris::status, doris::memtable::_do_flush()::$_0&,="" int="">(doris::MemTable::_do_flush()::$_0&, int&&) at /var/local/ldb_toolchain/bin/../lib/gcc/x86_64-linux-gnu/11/../../../../include/c++/11/bits/invoke.h:114
15# std::_Function_handler::_M_invoke(std::_Any_data const&, int&&) at /var/local/ldb_toolchain/bin/../lib/gcc/x86_64-linux-gnu/11/../../../../include/c++/11/bits/std_function.h:291
16# std::function::operator()(int) const at /var/local/ldb_toolchain/bin/../lib/gcc/x86_64-linux-gnu/11/../../../../include/c++/11/bits/std_function.h:560
17# doris::BetaRowsetWriter::flush_single_memtable(doris::vectorized::Block const*, long*, doris::FlushContext const*) at /home/zcp/repo_center/doris_branch-2.0/doris/be/src/olap/rowset/beta_rowset_writer.cpp:481
18# doris::MemTable::_do_flush() at /home/zcp/repo_center/doris_branch-2.0/doris/be/src/olap/memtable.cpp:540
19# doris::MemTable::flush() at /home/zcp/repo_center/doris_branch-2.0/doris/be/src/olap/memtable.cpp:503
20# doris::FlushToken::_flush_memtable(doris::MemTable*, long) at /home/zcp/repo_center/doris_branch-2.0/doris/be/src/olap/memtable_flush_executor.cpp:98
21# doris::MemtableFlushTask::run() at /home/zcp/repo_center/doris_branch-2.0/doris/be/src/olap/memtable_flush_executor.cpp:46
22# doris::ThreadPool::dispatch_thread() at /home/zcp/repo_center/doris_branch-2.0/doris/be/src/util/threadpool.cpp:531
23# void std::_invoke_impl<void, void="" (doris::threadpool::&)(),="" doris::threadpool&="">(std::_invoke_memfun_deref, void (doris::ThreadPool::&)(), doris::ThreadPool&) at /var/local/ldb_toolchain/bin/../lib/gcc/x86_64-linux-gnu/11/../../../../include/c++/11/bits/invoke.h:74
24# std::_invoke_result::type std::_invoke(void (doris::ThreadPool::&)(), doris::ThreadPool&) at /var/local/ldb_toolchain/bin/../lib/gcc/x86_64-linux-gnu/11/../../../../include/c++/11/bits/invoke.h:96
25# void std::Bind::_call<void, ,="" 0ul="">(std::tuple<>&&, std::_Index_tuple<0ul>) at /var/local/ldb_toolchain/bin/../lib/gcc/x86_64-linux-gnu/11/../../../../include/c++/11/functional:420
26# void std::_Bind::operator()<, void>() at /var/local/ldb_toolchain/bin/../lib/gcc/x86_64-linux-gnu/11/../../../../include/c++/11/functional:503
27# void std::_invoke_impl<void, std::_bind<void="" (doris::threadpool::(doris::threadpool))()="">&>(std::_invoke_other, std::_Bind&) at /var/local/ldb_toolchain/bin/../lib/gcc/x86_64-linux-gnu/11/../../../../include/c++/11/bits/invoke.h:61
28# std::enable_if<is_invocable_r_v<void, std::bind<void="" (doris::threadpool::(doris::threadpool))()="">&>, void>::type std::_invoke_r<void, std::_bind<void="" (doris::threadpool::(doris::threadpool))()="">&>(std::_Bind&) at /var/local/ldb_toolchain/bin/../lib/gcc/x86_64-linux-gnu/11/../../../../include/c++/11/bits/invoke.h:117
29# std::_Function_handler >::_M_invoke(std::_Any_data const&) at /var/local/ldb_toolchain/bin/../lib/gcc/x86_64-linux-gnu/11/../../../../include/c++/11/bits/std_function.h:291
30# std::function::operator()() const at /var/local/ldb_toolchain/bin/../lib/gcc/x86_64-linux-gnu/11/../../../../include/c++/11/bits/std_function.h:560
31# doris::Thread::supervise_thread(void*) at /home/zcp/repo_center/doris_branch-2.0/doris/be/src/util/thread.cpp:465
32# start_thread at /build/glibc-SzIz7B/glibc-2.31/nptl/pthread_create.c:478
33# __clone at ../sysdeps/unix/sysv/linux/x86_64/clone.S:97

This PR handle the returned status code correctly after the modification of #23619 and add a more fine-grained new error code ENTRY_NOT_FOUND

Further comments

If this is a relatively large or complex change, kick off the discussion at dev@doris.apache.org by explaining why you chose the solution you did and what alternatives you considered, etc...

@bobhan1
Copy link
Contributor Author

bobhan1 commented Sep 9, 2023

run buildall

@bobhan1 bobhan1 changed the title update [Fix](Status) Handle status code correctly and add a new error code ENTRY_NOT_FOUND Sep 9, 2023
@github-actions
Copy link
Contributor

github-actions bot commented Sep 9, 2023

clang-tidy review says "All clean, LGTM! 👍"

@doris-robot
Copy link

TeamCity be ut coverage result:
Function Coverage: 36.91% (7897/21397)
Line Coverage: 28.92% (63387/219145)
Region Coverage: 27.86% (32905/118100)
Branch Coverage: 24.45% (16904/69142)
Coverage Report: http://coverage.selectdb-in.cc/coverage/c7cf7c9ccc55a2fd0cdc41ed63ab5452a7eefeb6_c7cf7c9ccc55a2fd0cdc41ed63ab5452a7eefeb6/report/index.html

@doris-robot
Copy link

(From new machine)TeamCity pipeline, clickbench performance test result:
the sum of best hot time: 46.4 seconds
stream load tsv: 548 seconds loaded 74807831229 Bytes, about 130 MB/s
stream load json: 21 seconds loaded 2358488459 Bytes, about 107 MB/s
stream load orc: 64 seconds loaded 1101869774 Bytes, about 16 MB/s
stream load parquet: 31 seconds loaded 861443392 Bytes, about 26 MB/s
insert into select: 28.7 seconds inserted 10000000 Rows, about 348K ops/s
storage size: 17162243109 Bytes

be/src/common/status.h Show resolved Hide resolved
@bobhan1
Copy link
Contributor Author

bobhan1 commented Sep 10, 2023

run buildall

@github-actions
Copy link
Contributor

clang-tidy review says "All clean, LGTM! 👍"

1 similar comment
@github-actions
Copy link
Contributor

clang-tidy review says "All clean, LGTM! 👍"

@doris-robot
Copy link

TeamCity be ut coverage result:
Function Coverage: 36.94% (7911/21415)
Line Coverage: 28.96% (63552/219446)
Region Coverage: 27.90% (32999/118284)
Branch Coverage: 24.47% (16955/69278)
Coverage Report: http://coverage.selectdb-in.cc/coverage/3f8c1351b97bcde88fe70172eeb8359301da4a31_3f8c1351b97bcde88fe70172eeb8359301da4a31/report/index.html

@bobhan1
Copy link
Contributor Author

bobhan1 commented Sep 10, 2023

run buildall

@github-actions
Copy link
Contributor

clang-tidy review says "All clean, LGTM! 👍"

@doris-robot
Copy link

TeamCity be ut coverage result:
Function Coverage: 36.93% (7914/21427)
Line Coverage: 28.97% (63602/219572)
Region Coverage: 27.89% (32998/118305)
Branch Coverage: 24.46% (16941/69264)
Coverage Report: http://coverage.selectdb-in.cc/coverage/4b84a48a135b6520028dce5e07fff84cfc6bace8_4b84a48a135b6520028dce5e07fff84cfc6bace8/report/index.html

@doris-robot
Copy link

(From new machine)TeamCity pipeline, clickbench performance test result:
the sum of best hot time: 45.66 seconds
stream load tsv: 582 seconds loaded 74807831229 Bytes, about 122 MB/s
stream load json: 21 seconds loaded 2358488459 Bytes, about 107 MB/s
stream load orc: 64 seconds loaded 1101869774 Bytes, about 16 MB/s
stream load parquet: 32 seconds loaded 861443392 Bytes, about 25 MB/s
insert into select: 28.9 seconds inserted 10000000 Rows, about 346K ops/s
storage size: 17162209545 Bytes

Copy link
Contributor

@dataroaring dataroaring left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM

@github-actions github-actions bot added the approved Indicates a PR has been approved by one committer. label Sep 10, 2023
@github-actions
Copy link
Contributor

PR approved by at least one committer and no changes requested.

@github-actions
Copy link
Contributor

PR approved by anyone and no changes requested.

Copy link
Contributor

@xiaokang xiaokang left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM

@xiaokang xiaokang added the p0_c label Sep 11, 2023
@xiaokang xiaokang merged commit a0fcc30 into apache:master Sep 11, 2023
24 of 25 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
approved Indicates a PR has been approved by one committer. dev/2.0.2-merged merge_conflict p0_c reviewed
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants