Joe McDonnell created IMPALA-13891:
--------------------------------------
Summary: failure/test_failpoints.py crashes when running with
tuple caching
Key: IMPALA-13891
URL: https://issues.apache.org/jira/browse/IMPALA-13891
Project: IMPALA
Issue Type: Bug
Components: Backend
Affects Versions: Impala 5.0.0
Reporter: Joe McDonnell
When running failure/test_failpoints.py with tuple caching enabled, Impala
crashes with this stack:
{noformat}
Crash reason: SIGSEGV /SEGV_MAPERR
Crash address: 0xb8
0 impalad!impala::MemTracker::LogUsage(int, std::__cxx11::basic_string<char,
std::char_traits<char>, std::allocator<char> > const&, long*) [atomic_base.h :
436 + 0x0]
1 impalad!impala::MemTracker::LogUsage(int, std::__cxx11::basic_string<char,
std::char_traits<char>, std::allocator<char> > const&,
std::__cxx11::list<impala::MemTracker*, std::allocator<impala::MemTracker*> >
const&, long*) [mem-tracker.cc : 370 + 0x13]
2 impalad!impala::MemTracker::LogUsage(int, std::__cxx11::basic_string<char,
std::char_traits<char>, std::allocator<char> > const&, long*) [mem-tracker.cc :
345 + 0x23]
3 impalad!impala::MemTracker::LogUsage(int, std::__cxx11::basic_string<char,
std::char_traits<char>, std::allocator<char> > const&,
std::__cxx11::list<impala::MemTracker*, std::allocator<impala::MemTracker*> >
const&, long*) [mem-tracker.cc : 370 + 0x13]
4 impalad!impala::MemTracker::LogUsage(int, std::__cxx11::basic_string<char,
std::char_traits<char>, std::allocator<char> > const&, long*) [mem-tracker.cc :
345 + 0x23]
5 impalad!impala::MemTracker::LogUsage(int, std::__cxx11::basic_string<char,
std::char_traits<char>, std::allocator<char> > const&,
std::__cxx11::list<impala::MemTracker*, std::allocator<impala::MemTracker*> >
const&, long*) [mem-tracker.cc : 370 + 0x13]
6 impalad!impala::MemTracker::LogUsage(int, std::__cxx11::basic_string<char,
std::char_traits<char>, std::allocator<char> > const&, long*) [mem-tracker.cc :
345 + 0x23]
7 impalad!impala::MemTracker::MemLimitExceeded(impala::MemTracker*,
impala::RuntimeState*, std::__cxx11::basic_string<char, std::char_traits<char>,
std::allocator<char> > const&, long) [mem-tracker.cc : 518 + 0x21]
8 impalad!impala::ExecNode::ExecDebugActionImpl(impala::TExecNodePhase::type,
impala::RuntimeState*) [exec-node.cc : 454 + 0x14]
9 impalad!impala::PartitionedHashJoinNode::GetNext(impala::RuntimeState*,
impala::RowBatch*, bool*) [exec-node.h : 459 + 0x12]
10 impalad!impala::FragmentInstanceState::ExecInternal()
[fragment-instance-state.cc : 446 + 0x12]
11 impalad!impala::FragmentInstanceState::Exec() [fragment-instance-state.cc :
104 + 0xc]
12 impalad!impala::QueryState::ExecFInstance(impala::FragmentInstanceState*)
[query-state.cc : 1013 + 0xc]
13 impalad!invoke [query-state.cc : 918 + 0x8]
14 impalad!impala::Thread::SuperviseThread(std::__cxx11::basic_string<char,
std::char_traits<char>, std::allocator<char> > const&,
std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >
const&, boost::function<void ()> const&, impala::ThreadDebugInfo const*,
impala::Promise<long, (impala::PromiseMode)0>*) [function_template.hpp : 763 +
0x3]
...{noformat}
After some debugging, it looks like the MemTrackers on the TupleFileWriter and
TupleFileReader get deleted without getting deregistered from their parent
MemTracker.
--
This message was sent by Atlassian Jira
(v8.20.10#820010)