Skip to content

test_merges_memory_limit/test.py::test_memory_limit_success is flaky #93441

@rschu1ze

Description

@rschu1ze

Test case history

Example failure (from here)

File: test_merges_memory_limit/test.py:36 - in test_memory_limit_success
    node.query(
File: helpers/cluster.py:4479 - in query
    return self.client.query(
File: helpers/client.py:40 - in wrap
    return func(self, *args, **kwargs)
File: helpers/client.py:80 - in query
    ).get_answer()
File: helpers/client.py:269 - in get_answer
    raise QueryRuntimeException(
E   helpers.client.QueryRuntimeException: Client failed! Return code: 241, stderr: Received exception from server (version 26.1.1):
E   Code: 241. DB::Exception: Received from 172.16.4.2:9000. DB::Exception: (total) memory limit exceeded: would use 5.29 GiB (attempt to allocate chunk of 129.04 MiB), current RSS: 12.48 GiB, maximum: 12.60 GiB. OvercommitTracker decision: Query was selected to stop by OvercommitTracker: while executing 'FUNCTION arrayReduce('groupArrayState'_String :: 2, arrayMap(x UInt16 -> randomPrintableASCII(100_UInt8), _CAST(6615950181070973664_15104068050963810316... :: 3) -> arrayReduce('groupArrayState'_String, arrayMap(x UInt16 -> randomPrintableASCII(100_UInt8), _CAST(66... AggregateFunction(groupArray, String) : 4'. Stack trace:
E   
E   0. ./ci/tmp/build/./base/poco/Foundation/src/Exception.cpp:28: Poco::Exception::Exception(String const&, int) @ 0x000000001e875bb8
E   1. ./ci/tmp/build/./src/Common/Exception.cpp:136: DB::Exception::Exception(DB::Exception::MessageMasked&&, int, bool) @ 0x0000000010f5564c
E   2. ./src/Common/Exception.h:172: DB::Exception::Exception(String&&, int, String, bool) @ 0x000000000abe1658
E   3. ./src/Common/Exception.h:58: DB::Exception::Exception(PreformattedMessage&&, int) @ 0x000000000abe110c
E   4. ./src/Common/Exception.h:190: DB::Exception::Exception<char const*, char const*, String, String, String, String, String, char const*, std::basic_string_view<char, std::char_traits<char>>>(int, FormatStringHelperImpl<std::type_identity<char const*>::type, std::type_identity<char const*>::type, std::type_identity<String>::type, std::type_identity<String>::type, std::type_identity<String>::type, std::type_identity<String>::type, std::type_identity<String>::type, std::type_identity<char const*>::type, std::type_identity<std::basic_string_view<char, std::char_traits<char>>>::type>, char const*&&, char const*&&, String&&, String&&, String&&, String&&, String&&, char const*&&, std::basic_string_view<char, std::char_traits<char>>&&) @ 0x0000000010fcf57c
E   5. ./ci/tmp/build/./src/Common/MemoryTracker.cpp:407: MemoryTracker::allocImpl(long, bool, MemoryTracker*, double) @ 0x0000000010fcd0d4
E   6. ./ci/tmp/build/./src/Common/MemoryTracker.cpp:0: MemoryTracker::allocImpl(long, bool, MemoryTracker*, double) @ 0x0000000010fccbd4
E   7. ./ci/tmp/build/./src/Common/MemoryTracker.cpp:0: MemoryTracker::allocImpl(long, bool, MemoryTracker*, double) @ 0x0000000010fccbd4
E   8. ./ci/tmp/build/./src/Common/MemoryTracker.cpp:0: MemoryTracker::allocImpl(long, bool, MemoryTracker*, double) @ 0x0000000010fccbd4
E   9. ./ci/tmp/build/./src/Common/CurrentMemoryTracker.cpp:80: CurrentMemoryTracker::allocImpl(long, bool) @ 0x0000000010f24ef4
E   10. ./ci/tmp/build/./src/Common/Allocator.cpp:126: Allocator<false, false>::alloc(unsigned long, unsigned long) @ 0x0000000010f22db0
E   11. ./src/Common/Arena.h:76: DB::Arena::addMemoryChunk(unsigned long) @ 0x000000000ac0dc74
E   12. ./src/Common/Arena.h:196: DB::IAggregateFunctionHelper<DB::(anonymous namespace)::GroupArrayGeneralImpl<DB::(anonymous namespace)::GroupArrayNodeString, DB::(anonymous namespace)::GroupArrayTrait<false, false, (DB::(anonymous namespace)::Sampler)0>>>::addBatchArray(unsigned long, unsigned long, char**, unsigned long, DB::IColumn const**, unsigned long const*, DB::Arena*) const @ 0x00000000116fd32c
E   13. ./ci/tmp/build/./src/Functions/array/arrayReduce.cpp:197: DB::FunctionArrayReduce::executeImpl(std::vector<DB::ColumnWithTypeAndName, std::allocator<DB::ColumnWithTypeAndName>> const&, std::shared_ptr<DB::IDataType const> const&, unsigned long) const @ 0x0000000010b13f44
E   14. ./ci/tmp/build/./src/Functions/IFunction.cpp:353: DB::IExecutableFunction::executeWithoutLowCardinalityColumns(std::vector<DB::ColumnWithTypeAndName, std::allocator<DB::ColumnWithTypeAndName>> const&, std::shared_ptr<DB::IDataType const> const&, unsigned long, bool) const @ 0x0000000014abff30
E   15. ./ci/tmp/build/./src/Functions/IFunction.cpp:430: DB::IExecutableFunction::executeWithoutSparseColumns(std::vector<DB::ColumnWithTypeAndName, std::allocator<DB::ColumnWithTypeAndName>> const&, std::shared_ptr<DB::IDataType const> const&, unsigned long, bool) const @ 0x0000000014ac0f08
E   16. ./ci/tmp/build/./src/Functions/IFunction.cpp:565: DB::IExecutableFunction::executeWithoutReplicatedColumns(std::vector<DB::ColumnWithTypeAndName, std::allocator<DB::ColumnWithTypeAndName>> const&, std::shared_ptr<DB::IDataType const> const&, unsigned long, bool) const @ 0x0000000014ac2430
E   17. ./ci/tmp/build/./src/Functions/IFunction.cpp:474: DB::IExecutableFunction::execute(std::vector<DB::ColumnWithTypeAndName, std::allocator<DB::ColumnWithTypeAndName>> const&, std::shared_ptr<DB::IDataType const> const&, unsigned long, bool) const @ 0x0000000014ac1d58
E   18. ./ci/tmp/build/./src/Interpreters/ExpressionActions.cpp:693: DB::ExpressionActions::execute(DB::Block&, unsigned long&, bool, bool) const @ 0x0000000016943b58
E   19. ./ci/tmp/build/./src/Processors/Transforms/ExpressionTransform.cpp:30: DB::ExpressionTransform::transform(DB::Chunk&) @ 0x0000000019f79a08
E   20. ./src/Processors/ISimpleTransform.h:33: DB::ISimpleTransform::transform(DB::Chunk&, DB::Chunk&) @ 0x0000000013882360
E   21. ./ci/tmp/build/./src/Processors/ISimpleTransform.cpp:98: DB::ISimpleTransform::work() @ 0x0000000019cf6d00
E   22. ./ci/tmp/build/./src/Processors/Executors/ExecutionThreadContext.cpp:53: DB::ExecutionThreadContext::executeTask() @ 0x0000000019d1023c
E   23. ./ci/tmp/build/./src/Processors/Executors/PipelineExecutor.cpp:351: DB::PipelineExecutor::executeStepImpl(unsigned long, DB::IAcquiredSlot*, std::atomic<bool>*) @ 0x0000000019d03fec
E   24. ./ci/tmp/build/./src/Processors/Executors/PipelineExecutor.cpp:279: void std::__function::__policy_func<void ()>::__call_func[abi:ne210105]<DB::PipelineExecutor::spawnThreads(std::shared_ptr<DB::IAcquiredSlot>)::$_0>(std::__function::__policy_storage const*) @ 0x0000000019d05510
E   25. ./contrib/llvm-project/libcxx/include/__functional/function.h:508: ? @ 0x000000001108ece8
E   26. ./contrib/llvm-project/libcxx/include/__type_traits/invoke.h:0: ThreadFromGlobalPoolImpl<false, true>::ThreadFromGlobalPoolImpl<void (ThreadPoolImpl<ThreadFromGlobalPoolImpl<false, true>>::ThreadFromThreadPool::*)(), ThreadPoolImpl<ThreadFromGlobalPoolImpl<false, true>>::ThreadFromThreadPool*>(void (ThreadPoolImpl<ThreadFromGlobalPoolImpl<false, true>>::ThreadFromThreadPool::*&&)(), ThreadPoolImpl<ThreadFromGlobalPoolImpl<false, true>>::ThreadFromThreadPool*&&)::'lambda'()::operator()() @ 0x0000000011093560
E   27. ./contrib/llvm-project/libcxx/include/__functional/function.h:508: ? @ 0x000000001108cc2c
E   28. ./contrib/llvm-project/libcxx/include/__type_traits/invoke.h:0: void* std::__thread_proxy[abi:ne210105]<std::tuple<std::unique_ptr<std::__thread_struct, std::default_delete<std::__thread_struct>>, void (ThreadPoolImpl<std::thread>::ThreadFromThreadPool::*)(), ThreadPoolImpl<std::thread>::ThreadFromThreadPool*>>(void*) @ 0x0000000011091fc8
E   29. ? @ 0x0000000000080398
E   30. ? @ 0x00000000000e9e9c
E   . (MEMORY_LIMIT_EXCEEDED)
E   (query: INSERT INTO test_merge_oom SELECT number%1024 AS id, arrayReduce('groupArrayState', arrayMap( x-> randomPrintableASCII(100), range(8192))) fat_state FROM numbers(3000))

Metadata

Metadata

Assignees

Labels

flaky testflaky test found by CItestingSpecial issue with list of bugs found by CI

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions