Skip to content

Conversation

@xinyiZzz
Copy link
Contributor

@xinyiZzz xinyiZzz commented Jul 11, 2024

pick
#36235
#35965

xinyiZzz added 2 commits July 11, 2024 15:38
Debug CacheManager::_caches unordered_map multithreaded visibility.
Fix apache#35590, CacheManager get CachePolicy should be used lock.

Add LRUCachePolicyTrackingAllocator and LRUCachePolicyTrackingManual.
tracking memory in LRUCachePolicy::insert, LRUCacheValueBase not need init mem_tracker, so not need to get CachePolicy under lock.
@doris-robot
Copy link

Thank you for your contribution to Apache Doris.
Don't know what should be done next? See How to process your PR

Since 2024-03-18, the Document has been moved to doris-website.
See Doris Document.

@xinyiZzz
Copy link
Contributor Author

run buildall

…ption (apache#35965)

add conf enable_stacktrace_in_allocator_check_failed, if true, allocator
check failed log stacktrace if not catch exception

```
I20240606 16:10:05.376622 3763531 allocator.cpp:109] Query:e35a88cfda634e66-b8664c46ff06b58a waiting for enough memory in thread id:140604421146368, maximum 1000ms, Allocator sys memory check failed: Cannot alloc:4096, consuming tracker:<Query#Id=e35a88cfda634e66-b8664c46
ff06b58a>, peak used 1178636808, current used 919127432, exec node:<>, process memory used 4.61 GB exceed limit 3.01 GB or sys available memory 145.57 GB less than low water mark 1.60 GB.
Alloc Stacktrace:

        0#  Allocator<false, false, false>::sys_memory_check(unsigned long) const at /mnt/disk2/liyifan/doris/ldb_toolchain/bin/../lib/gcc/x86_64-linux-gnu/11/../../../../include/c++/11/bits/basic_string.h:1946
        1#  Allocator<false, false, false>::alloc_impl(unsigned long, unsigned long) at /mnt/disk2/liyifan/doris/core/be/src/vec/common/allocator.cpp:197
        2#  doris::FunctionContext::FunctionContext() at /mnt/disk2/liyifan/doris/core/be/src/vec/common/arena.h:62
        3#  doris::FunctionContext::create_context(doris::RuntimeState*, doris::TypeDescriptor const&, std::vector<doris::TypeDescriptor, std::allocator<doris::TypeDescriptor> > const&) at /mnt/disk2/liyifan/doris/ldb_toolchain/bin/../lib/gcc/x86_64-linux-gnu/11/../../../
../include/c++/11/bits/unique_ptr.h:155
        4#  doris::FunctionContext::clone() at /mnt/disk2/liyifan/doris/core/be/src/udf/udf.cpp:57
        5#  doris::vectorized::VExprContext::clone(doris::RuntimeState*, std::shared_ptr<doris::vectorized::VExprContext>&) at /mnt/disk2/liyifan/doris/ldb_toolchain/bin/../lib/gcc/x86_64-linux-gnu/11/../../../../include/c++/11/bits/vector.tcc:112
        6#  doris::pipeline::PipelineXLocalState<doris::pipeline::FakeSharedState>::open(doris::RuntimeState*) at /mnt/disk2/liyifan/doris/core/be/src/common/status.h:492
        7#  doris::pipeline::ScanLocalState<doris::pipeline::OlapScanLocalState>::open(doris::RuntimeState*) at /mnt/disk2/liyifan/doris/core/be/src/common/status.h:492
        8#  doris::pipeline::PipelineTask::_open() at /mnt/disk2/liyifan/doris/ldb_toolchain/bin/../lib/gcc/x86_64-linux-gnu/11/../../../../include/c++/11/tuple:180
        9#  doris::pipeline::PipelineTask::execute(bool*) at /mnt/disk2/liyifan/doris/core/be/src/common/status.h:492
        10# doris::pipeline::TaskScheduler::_do_work(unsigned long) at /mnt/disk2/liyifan/doris/core/be/src/common/status.h:388
        11# doris::ThreadPool::dispatch_thread() at /mnt/disk2/liyifan/doris/core/be/src/util/threadpool.cpp:0
        12# doris::Thread::supervise_thread(void*) at /mnt/disk2/liyifan/doris/ldb_toolchain/bin/../usr/include/pthread.h:562
        13# start_thread
        14# __clone
```
@xinyiZzz
Copy link
Contributor Author

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.34% (9154/25188)
Line Coverage: 27.90% (74847/268257)
Region Coverage: 26.80% (38619/144087)
Branch Coverage: 23.50% (19575/83314)
Coverage Report: http://coverage.selectdb-in.cc/coverage/f62a153d0e0123b4d57eaed74413a1efca49af66_f62a153d0e0123b4d57eaed74413a1efca49af66/report/index.html

@HappenLee HappenLee merged commit cf2fb69 into apache:branch-2.1 Jul 11, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants