-
Notifications
You must be signed in to change notification settings - Fork 8.3k
INERT INTO Kafka Engine from an empty SELECT sub query cause FATAL crash #14202
Description
(you don't have to strictly follow this form)
Describe the bug
INERT INTO Kafka Engine from an empty SELECT sub query cause FATAL crash
After upgrade to version 20. issue is seen, I tried lastest version also.
but Version 19 is working good without crash.
How to reproduce
-
Which ClickHouse server version to use
(version 20.6.2.1, no build id) -
Which interface to use, if matters
clickhouse-client -
Non-default settings, if any
-
CREATE TABLEstatements for all tables involved
CREATE TABLE kafka_q
(
`ts` UInt64,
`ip` String
)
ENGINE = Kafka('kafka1:9092,kafka2:9092,kafka3:9092', 'test', 'group_dev', 'JSONEachRow')
CREATE TABLE data
(
`dt` Date,
`ip` String,
`count` UInt64
)
ENGINE = SummingMergeTree()
PARTITION BY toYYYYMM(dt)
ORDER BY (ip);
-
Sample data for all these tables, use clickhouse-obfuscator if necessary
no data -
Queries to run that lead to unexpected result
INSERT INTO kafka_q SELECT ts, ip FROM (select ip, dt as ts from data)
data table is empty, and kafka_q no master connected or disconnected.
Expected behavior
A clear and concise description of what you expected to happen.
no crash
Error message and/or stacktrace
If applicable, add screenshots to help explain your problem.
Logs:
INSERT INTO kafka_q SELECT
ts,
ip
FROM
(
SELECT
ip,
dt AS ts
FROM data
)
2020.08.28 12:03:55.215231 [ 101645 ] {01e92588-99e6-43ff-bcf9-7a146375e049} <Debug> executeQuery: (from [::1]:52540) INSERT INTO kafka_q SELECT ts, ip FROM (select ip, dt as ts from data)
2020.08.28 12:03:55.215289 [ 101645 ] {01e92588-99e6-43ff-bcf9-7a146375e049} <Trace> ContextAccess (default): Access granted: INSERT(ts, ip) ON default.kafka_q
2020.08.28 12:03:55.215414 [ 101645 ] {01e92588-99e6-43ff-bcf9-7a146375e049} <Trace> ContextAccess (default): Access granted: SELECT(dt, ip) ON default.data
2020.08.28 12:03:55.215494 [ 101645 ] {01e92588-99e6-43ff-bcf9-7a146375e049} <Trace> ContextAccess (default): Access granted: SELECT(dt, ip) ON default.data
2020.08.28 12:03:55.215575 [ 101645 ] {01e92588-99e6-43ff-bcf9-7a146375e049} <Debug> default.data (SelectExecutor): Key condition: unknown
2020.08.28 12:03:55.215592 [ 101645 ] {01e92588-99e6-43ff-bcf9-7a146375e049} <Debug> default.data (SelectExecutor): MinMax index condition: unknown
2020.08.28 12:03:55.215605 [ 101645 ] {01e92588-99e6-43ff-bcf9-7a146375e049} <Debug> default.data (SelectExecutor): Selected 0 parts by date, 0 parts by key, 0 marks to read from 0 ranges
2020.08.28 12:03:55.215627 [ 101645 ] {01e92588-99e6-43ff-bcf9-7a146375e049} <Trace> InterpreterSelectQuery: FetchColumns -> Complete
2020.08.28 12:03:55.215648 [ 101645 ] {01e92588-99e6-43ff-bcf9-7a146375e049} <Trace> InterpreterSelectQuery: FetchColumns -> Complete
2020.08.28 12:03:55.216111 [ 101552 ] {} <Trace> BaseDaemon: Received signal 11
2020.08.28 12:03:55.216220 [ 103418 ] {} <Fatal> BaseDaemon: ########################################
2020.08.28 12:03:55.216289 [ 103418 ] {} <Fatal> BaseDaemon: (version 20.6.2.1, no build id) (from thread 101558) (query_id: 01e92588-99e6-43ff-bcf9-7a146375e049) Received signal Segmentation fault: 11 (11)
2020.08.28 12:03:55.216325 [ 103418 ] {} <Fatal> BaseDaemon: Address: NULL pointer. Address not mapped to object.
2020.08.28 12:03:55.216350 [ 103418 ] {} <Fatal> BaseDaemon: Stack trace: 0x106b695ed
2020.08.28 12:03:55.216374 [ 103418 ] {} <Fatal> BaseDaemon: 0. 0x106b695ed
[ip-192-168-1-102.cn-northwest-1.compute.internal] 2020.08.28 12:03:55.216220 [ 103418 ] <Fatal> BaseDaemon: ########################################
[ip-192-168-1-102.cn-northwest-1.compute.internal] 2020.08.28 12:03:55.216289 [ 103418 ] <Fatal> BaseDaemon: (version 20.6.2.1, no build id) (from thread 101558) (query_id: 01e92588-99e6-43ff-bcf9-7a146375e049) Received signal Segmentation fault: 11 (11)
[ip-192-168-1-102.cn-northwest-1.compute.internal] 2020.08.28 12:03:55.216325 [ 103418 ] <Fatal> BaseDaemon: Address: NULL pointer. Address not mapped to object.
[ip-192-168-1-102.cn-northwest-1.compute.internal] 2020.08.28 12:03:55.216350 [ 103418 ] <Fatal> BaseDaemon: Stack trace: 0x106b695ed
[ip-192-168-1-102.cn-northwest-1.compute.internal] 2020.08.28 12:03:55.216374 [ 103418 ] <Fatal> BaseDaemon: 0. 0x106b695ed
2020.08.28 12:03:59.284593 [ 101596 ] {} <Trace> SystemLog (system.query_log): Flushing system log, 1 entries to flush
2020.08.28 12:03:59.285824 [ 101596 ] {} <Debug> DiskLocal: Reserving 1.00 MiB on disk `default`, having unreserved 31.26 TiB.
2020.08.28 12:03:59.288719 [ 101596 ] {} <Trace> system.query_log: Renaming temporary part tmp_insert_202008_11_11_0 to 202008_21_21_0.
2020.08.28 12:03:59.289266 [ 101596 ] {} <Trace> SystemLog (system.query_log): Flushed system log
2020.08.28 12:03:59.418192 [ 101599 ] {} <Trace> SystemLog (system.metric_log): Flushing system log, 7 entries to flush
2020.08.28 12:03:59.423499 [ 101599 ] {} <Debug> DiskLocal: Reserving 1.00 MiB on disk `default`, having unreserved 31.26 TiB.
2020.08.28 12:03:59.425930 [ 101599 ] {} <Trace> system.metric_log: Renaming temporary part tmp_insert_202008_23_23_0 to 202008_70_70_0.
2020.08.28 12:03:59.426467 [ 101599 ] {} <Trace> SystemLog (system.metric_log): Flushed system log
Exception on client:
Code: 32. DB::Exception: Attempt to read after eof: while receiving packet from localhost:9000
GDB fullstack:
(lldb) bt
* thread #11, name = 'QueryPipelineEx', stop reason = EXC_BAD_ACCESS (code=1, address=0x0)
* frame #0: 0x00000001036215ed clickhouse`DB::KafkaBlockOutputStream::writeSuffix(this=0x0000000114072498) at KafkaBlockOutputStream.cpp:45:12 [opt]
frame #1: 0x00000001042fc855 clickhouse`DB::ISink::prepare(this=0x00000001140f3618) at ISink.cpp:19:9 [opt]
frame #2: 0x000000010432bdd4 clickhouse`DB::PipelineExecutor::prepareProcessor(this=0x0000000120c9de18, pid=8, thread_number=0, queue=size=0, node_lock=<unavailable>) at PipelineExecutor.cpp:291:58 [opt]
frame #3: 0x000000010432bcb4 clickhouse`DB::PipelineExecutor::tryAddProcessorToStackIfUpdated(this=0x0000000120c9de18, edge=0x000000011405bc90, queue=size=0, thread_number=0) at PipelineExecutor.cpp:264:16 [opt]
frame #4: 0x000000010432c255 clickhouse`DB::PipelineExecutor::prepareProcessor(this=0x0000000120c9de18, pid=7, thread_number=0, queue=<unavailable>, node_lock=<unavailable>) at PipelineExecutor.cpp:367:18 [opt]
frame #5: 0x000000010432bcb4 clickhouse`DB::PipelineExecutor::tryAddProcessorToStackIfUpdated(this=0x0000000120c9de18, edge=0x000000011405bbf0, queue=size=0, thread_number=0) at PipelineExecutor.cpp:264:16 [opt]
frame #6: 0x000000010432c255 clickhouse`DB::PipelineExecutor::prepareProcessor(this=0x0000000120c9de18, pid=6, thread_number=0, queue=<unavailable>, node_lock=<unavailable>) at PipelineExecutor.cpp:367:18 [opt]
frame #7: 0x000000010432bcb4 clickhouse`DB::PipelineExecutor::tryAddProcessorToStackIfUpdated(this=0x0000000120c9de18, edge=0x000000011405bb50, queue=size=0, thread_number=0) at PipelineExecutor.cpp:264:16 [opt]
frame #8: 0x000000010432c255 clickhouse`DB::PipelineExecutor::prepareProcessor(this=0x0000000120c9de18, pid=5, thread_number=0, queue=<unavailable>, node_lock=<unavailable>) at PipelineExecutor.cpp:367:18 [opt]
frame #9: 0x000000010432bcb4 clickhouse`DB::PipelineExecutor::tryAddProcessorToStackIfUpdated(this=0x0000000120c9de18, edge=0x000000011405bab0, queue=size=0, thread_number=0) at PipelineExecutor.cpp:264:16 [opt]
frame #10: 0x000000010432c255 clickhouse`DB::PipelineExecutor::prepareProcessor(this=0x0000000120c9de18, pid=4, thread_number=0, queue=<unavailable>, node_lock=<unavailable>) at PipelineExecutor.cpp:367:18 [opt]
frame #11: 0x000000010432bcb4 clickhouse`DB::PipelineExecutor::tryAddProcessorToStackIfUpdated(this=0x0000000120c9de18, edge=0x000000011405b9c0, queue=size=0, thread_number=0) at PipelineExecutor.cpp:264:16 [opt]
frame #12: 0x000000010432c255 clickhouse`DB::PipelineExecutor::prepareProcessor(this=0x0000000120c9de18, pid=3, thread_number=0, queue=<unavailable>, node_lock=<unavailable>) at PipelineExecutor.cpp:367:18 [opt]
frame #13: 0x000000010432bcb4 clickhouse`DB::PipelineExecutor::tryAddProcessorToStackIfUpdated(this=0x0000000120c9de18, edge=0x000000011405b970, queue=size=0, thread_number=0) at PipelineExecutor.cpp:264:16 [opt]
frame #14: 0x000000010432c255 clickhouse`DB::PipelineExecutor::prepareProcessor(this=0x0000000120c9de18, pid=2, thread_number=0, queue=<unavailable>, node_lock=<unavailable>) at PipelineExecutor.cpp:367:18 [opt]
frame #15: 0x000000010432bcb4 clickhouse`DB::PipelineExecutor::tryAddProcessorToStackIfUpdated(this=0x0000000120c9de18, edge=0x000000011405b6f0, queue=size=0, thread_number=0) at PipelineExecutor.cpp:264:16 [opt]
frame #16: 0x000000010432c255 clickhouse`DB::PipelineExecutor::prepareProcessor(this=0x0000000120c9de18, pid=1, thread_number=0, queue=<unavailable>, node_lock=<unavailable>) at PipelineExecutor.cpp:367:18 [opt]
frame #17: 0x000000010432bcb4 clickhouse`DB::PipelineExecutor::tryAddProcessorToStackIfUpdated(this=0x0000000120c9de18, edge=0x000000011405b600, queue=size=0, thread_number=0) at PipelineExecutor.cpp:264:16 [opt]
frame #18: 0x000000010432c255 clickhouse`DB::PipelineExecutor::prepareProcessor(this=0x0000000120c9de18, pid=0, thread_number=0, queue=<unavailable>, node_lock=<unavailable>) at PipelineExecutor.cpp:367:18 [opt]
frame #19: 0x000000010432e483 clickhouse`DB::PipelineExecutor::executeStepImpl(this=0x0000000120c9de18, thread_num=0, num_threads=1, yield_flag=<unavailable>) at PipelineExecutor.cpp:658:26 [opt]
frame #20: 0x000000010432d05e clickhouse`DB::PipelineExecutor::executeImpl(unsigned long) [inlined] DB::PipelineExecutor::executeSingleThread(this=0x0000000120c9de18, thread_num=0, num_threads=1) at PipelineExecutor.cpp:546:5 [opt]
frame #21: 0x000000010432d04f clickhouse`DB::PipelineExecutor::executeImpl(this=0x0000000120c9de18, num_threads=1) at PipelineExecutor.cpp:812 [opt]
frame #22: 0x000000010432ccfe clickhouse`DB::PipelineExecutor::execute(this=0x0000000120c9de18, num_threads=<unavailable>) at PipelineExecutor.cpp:479:9 [opt]
frame #23: 0x00000001043363cc clickhouse`std::__1::__function::__func<ThreadFromGlobalPool::ThreadFromGlobalPool<DB::PullingAsyncPipelineExecutor::pull(DB::Chunk&, unsigned long long)::$_0>(DB::PullingAsyncPipelineExecutor::pull(DB::Chunk&, unsigned long long)::$_0&&)::'lambda'(), std::__1::allocator<ThreadFromGlobalPool::ThreadFromGlobalPool<DB::PullingAsyncPipelineExecutor::pull(DB::Chunk&, unsigned long long)::$_0>(DB::PullingAsyncPipelineExecutor::pull(DB::Chunk&, unsigned long long)::$_0&&)::'lambda'()>, void ()>::operator()() [inlined] DB::threadFunction(data=<unavailable>, num_threads=<unavailable>) at PullingAsyncPipelineExecutor.cpp:79:24 [opt]
frame #24: 0x00000001043363a4 clickhouse`std::__1::__function::__func<ThreadFromGlobalPool::ThreadFromGlobalPool<DB::PullingAsyncPipelineExecutor::pull(DB::Chunk&, unsigned long long)::$_0>(DB::PullingAsyncPipelineExecutor::pull(DB::Chunk&, unsigned long long)::$_0&&)::'lambda'(), std::__1::allocator<ThreadFromGlobalPool::ThreadFromGlobalPool<DB::PullingAsyncPipelineExecutor::pull(DB::Chunk&, unsigned long long)::$_0>(DB::PullingAsyncPipelineExecutor::pull(DB::Chunk&, unsigned long long)::$_0&&)::'lambda'()>, void ()>::operator()() [inlined] DB::PullingAsyncPipelineExecutor::pull(this=0x000000012091f758)::$_0::operator()() const at PullingAsyncPipelineExecutor.cpp:101 [opt]
frame #25: 0x000000010433634d clickhouse`std::__1::__function::__func<ThreadFromGlobalPool::ThreadFromGlobalPool<DB::PullingAsyncPipelineExecutor::pull(DB::Chunk&, unsigned long long)::$_0>(DB::PullingAsyncPipelineExecutor::pull(DB::Chunk&, unsigned long long)::$_0&&)::'lambda'(), std::__1::allocator<ThreadFromGlobalPool::ThreadFromGlobalPool<DB::PullingAsyncPipelineExecutor::pull(DB::Chunk&, unsigned long long)::$_0>(DB::PullingAsyncPipelineExecutor::pull(DB::Chunk&, unsigned long long)::$_0&&)::'lambda'()>, void ()>::operator()() [inlined] decltype(__f=0x000000012091f758)::$_0 const&>(fp)()) std::__1::__invoke_constexpr<DB::PullingAsyncPipelineExecutor::pull(DB::Chunk&, unsigned long long)::$_0 const&>(DB::PullingAsyncPipelineExecutor::pull(DB::Chunk&, unsigned long long)::$_0 const&) at type_traits:3525 [opt]
frame #26: 0x000000010433634d clickhouse`std::__1::__function::__func<ThreadFromGlobalPool::ThreadFromGlobalPool<DB::PullingAsyncPipelineExecutor::pull(DB::Chunk&, unsigned long long)::$_0>(DB::PullingAsyncPipelineExecutor::pull(DB::Chunk&, unsigned long long)::$_0&&)::'lambda'(), std::__1::allocator<ThreadFromGlobalPool::ThreadFromGlobalPool<DB::PullingAsyncPipelineExecutor::pull(DB::Chunk&, unsigned long long)::$_0>(DB::PullingAsyncPipelineExecutor::pull(DB::Chunk&, unsigned long long)::$_0&&)::'lambda'()>, void ()>::operator()() [inlined] decltype(__f=0x000000012091f758, __t=<unavailable>) std::__1::__apply_tuple_impl<DB::PullingAsyncPipelineExecutor::pull(DB::Chunk&, unsigned long long)::$_0 const&, std::__1::tuple<> const&>(DB::PullingAsyncPipelineExecutor::pull(DB::Chunk&, unsigned long long)::$_0 const&, std::__1::tuple<> const&, std::__1::__tuple_indices<>) at tuple:1415 [opt]
frame #27: 0x000000010433634d clickhouse`std::__1::__function::__func<ThreadFromGlobalPool::ThreadFromGlobalPool<DB::PullingAsyncPipelineExecutor::pull(DB::Chunk&, unsigned long long)::$_0>(DB::PullingAsyncPipelineExecutor::pull(DB::Chunk&, unsigned long long)::$_0&&)::'lambda'(), std::__1::allocator<ThreadFromGlobalPool::ThreadFromGlobalPool<DB::PullingAsyncPipelineExecutor::pull(DB::Chunk&, unsigned long long)::$_0>(DB::PullingAsyncPipelineExecutor::pull(DB::Chunk&, unsigned long long)::$_0&&)::'lambda'()>, void ()>::operator()() [inlined] decltype(__f=0x000000012091f758, __t=<unavailable>) std::__1::apply<DB::PullingAsyncPipelineExecutor::pull(DB::Chunk&, unsigned long long)::$_0 const&, std::__1::tuple<> const&>(DB::PullingAsyncPipelineExecutor::pull(DB::Chunk&, unsigned long long)::$_0 const&, std::__1::tuple<> const&) at tuple:1424 [opt]
frame #28: 0x000000010433634d clickhouse`std::__1::__function::__func<ThreadFromGlobalPool::ThreadFromGlobalPool<DB::PullingAsyncPipelineExecutor::pull(DB::Chunk&, unsigned long long)::$_0>(DB::PullingAsyncPipelineExecutor::pull(DB::Chunk&, unsigned long long)::$_0&&)::'lambda'(), std::__1::allocator<ThreadFromGlobalPool::ThreadFromGlobalPool<DB::PullingAsyncPipelineExecutor::pull(DB::Chunk&, unsigned long long)::$_0>(DB::PullingAsyncPipelineExecutor::pull(DB::Chunk&, unsigned long long)::$_0&&)::'lambda'()>, void ()>::operator()() at ThreadPool.h:168 [opt]
frame #29: 0x0000000104336348 clickhouse`std::__1::__function::__func<ThreadFromGlobalPool::ThreadFromGlobalPool<DB::PullingAsyncPipelineExecutor::pull(DB::Chunk&, unsigned long long)::$_0>(DB::PullingAsyncPipelineExecutor::pull(DB::Chunk&, unsigned long long)::$_0&&)::'lambda'(), std::__1::allocator<ThreadFromGlobalPool::ThreadFromGlobalPool<DB::PullingAsyncPipelineExecutor::pull(DB::Chunk&, unsigned long long)::$_0>(DB::PullingAsyncPipelineExecutor::pull(DB::Chunk&, unsigned long long)::$_0&&)::'lambda'()>, void ()>::operator()() [inlined] decltype(__f=<unavailable>)::$_0>(fp)()) std::__1::__invoke<ThreadFromGlobalPool::ThreadFromGlobalPool<DB::PullingAsyncPipelineExecutor::pull(DB::Chunk&, unsigned long long)::$_0>(DB::PullingAsyncPipelineExecutor::pull(DB::Chunk&, unsigned long long)::$_0&&)::'lambda'()&>(DB::PullingAsyncPipelineExecutor::pull(DB::Chunk&, unsigned long long)::$_0&&) at type_traits:3519 [opt]
frame #30: 0x0000000104336348 clickhouse`std::__1::__function::__func<ThreadFromGlobalPool::ThreadFromGlobalPool<DB::PullingAsyncPipelineExecutor::pull(DB::Chunk&, unsigned long long)::$_0>(DB::PullingAsyncPipelineExecutor::pull(DB::Chunk&, unsigned long long)::$_0&&)::'lambda'(), std::__1::allocator<ThreadFromGlobalPool::ThreadFromGlobalPool<DB::PullingAsyncPipelineExecutor::pull(DB::Chunk&, unsigned long long)::$_0>(DB::PullingAsyncPipelineExecutor::pull(DB::Chunk&, unsigned long long)::$_0&&)::'lambda'()>, void ()>::operator()() [inlined] void std::__1::__invoke_void_return_wrapper<void>::__call<ThreadFromGlobalPool::ThreadFromGlobalPool<DB::PullingAsyncPipelineExecutor::pull(__args=<unavailable>)::$_0>(DB::PullingAsyncPipelineExecutor::pull(DB::Chunk&, unsigned long long)::$_0&&)::'lambda'()&>(ThreadFromGlobalPool::ThreadFromGlobalPool<DB::PullingAsyncPipelineExecutor::pull(DB::Chunk&, unsigned long long)::$_0>(DB::PullingAsyncPipelineExecutor::pull(DB::Chunk&, unsigned long long)::$_0&&)::'lambda'()&) at __functional_base:348 [opt]
frame #31: 0x0000000104336348 clickhouse`std::__1::__function::__func<ThreadFromGlobalPool::ThreadFromGlobalPool<DB::PullingAsyncPipelineExecutor::pull(DB::Chunk&, unsigned long long)::$_0>(DB::PullingAsyncPipelineExecutor::pull(DB::Chunk&, unsigned long long)::$_0&&)::'lambda'(), std::__1::allocator<ThreadFromGlobalPool::ThreadFromGlobalPool<DB::PullingAsyncPipelineExecutor::pull(DB::Chunk&, unsigned long long)::$_0>(DB::PullingAsyncPipelineExecutor::pull(DB::Chunk&, unsigned long long)::$_0&&)::'lambda'()>, void ()>::operator()() [inlined] std::__1::__function::__alloc_func<ThreadFromGlobalPool::ThreadFromGlobalPool<DB::PullingAsyncPipelineExecutor::pull(DB::Chunk&, unsigned long long)::$_0>(DB::PullingAsyncPipelineExecutor::pull(DB::Chunk&, unsigned long long)::$_0&&)::'lambda'(), std::__1::allocator<ThreadFromGlobalPool::ThreadFromGlobalPool<DB::PullingAsyncPipelineExecutor::pull(DB::Chunk&, unsigned long long)::$_0>(DB::PullingAsyncPipelineExecutor::pull(DB::Chunk&, unsigned long long)::$_0&&)::'lambda'()>, void ()>::operator(this=<unavailable>)() at functional:1540 [opt]
frame #32: 0x0000000104336348 clickhouse`std::__1::__function::__func<ThreadFromGlobalPool::ThreadFromGlobalPool<DB::PullingAsyncPipelineExecutor::pull(DB::Chunk&, unsigned long long)::$_0>(DB::PullingAsyncPipelineExecutor::pull(DB::Chunk&, unsigned long long)::$_0&&)::'lambda'(), std::__1::allocator<ThreadFromGlobalPool::ThreadFromGlobalPool<DB::PullingAsyncPipelineExecutor::pull(DB::Chunk&, unsigned long long)::$_0>(DB::PullingAsyncPipelineExecutor::pull(DB::Chunk&, unsigned long long)::$_0&&)::'lambda'()>, void ()>::operator(this=0x000000012091f740)() at functional:1714 [opt]
frame #33: 0x0000000100026756 clickhouse`ThreadPoolImpl<std::__1::thread>::worker(std::__1::__list_iterator<std::__1::thread, void*>) [inlined] std::__1::__function::__value_func<void ()>::operator(this=<unavailable>)() const at functional:1867:16 [opt]
frame #34: 0x0000000100026743 clickhouse`ThreadPoolImpl<std::__1::thread>::worker(std::__1::__list_iterator<std::__1::thread, void*>) [inlined] std::__1::function<void ()>::operator(this=<unavailable>)() const at functional:2473 [opt]
frame #35: 0x0000000100026743 clickhouse`ThreadPoolImpl<std::__1::thread>::worker(this=0x0000000111e19f00, thread_it=<unavailable>) at ThreadPool.cpp:227 [opt]
frame #36: 0x0000000100028d71 clickhouse`void* std::__1::__thread_proxy<std::__1::tuple<std::__1::unique_ptr<std::__1::__thread_struct, std::__1::default_delete<std::__1::__thread_struct> >, void ThreadPoolImpl<std::__1::thread>::scheduleImpl<void>(std::__1::function<void ()>, int, std::__1::optional<unsigned long long>)::'lambda1'()> >(void*) [inlined] void ThreadPoolImpl<std::__1::thread>::scheduleImpl<void>(this=<unavailable>)>, int, std::__1::optional<unsigned long long>)::'lambda1'()::operator()() const at ThreadPool.cpp:108:73 [opt]
frame #37: 0x0000000100028d68 clickhouse`void* std::__1::__thread_proxy<std::__1::tuple<std::__1::unique_ptr<std::__1::__thread_struct, std::__1::default_delete<std::__1::__thread_struct> >, void ThreadPoolImpl<std::__1::thread>::scheduleImpl<void>(std::__1::function<void ()>, int, std::__1::optional<unsigned long long>)::'lambda1'()> >(void*) [inlined] decltype(__f=<unavailable>)()) std::__1::__invoke<void ThreadPoolImpl<std::__1::thread>::scheduleImpl<void>(std::__1::function<void ()>, int, std::__1::optional<unsigned long long>)::'lambda1'()>(void&&) at type_traits:3519 [opt]
frame #38: 0x0000000100028d68 clickhouse`void* std::__1::__thread_proxy<std::__1::tuple<std::__1::unique_ptr<std::__1::__thread_struct, std::__1::default_delete<std::__1::__thread_struct> >, void ThreadPoolImpl<std::__1::thread>::scheduleImpl<void>(std::__1::function<void ()>, int, std::__1::optional<unsigned long long>)::'lambda1'()> >(void*) [inlined] void std::__1::__thread_execute<std::__1::unique_ptr<std::__1::__thread_struct, std::__1::default_delete<std::__1::__thread_struct> >, void ThreadPoolImpl<std::__1::thread>::scheduleImpl<void>(std::__1::function<void ()>, int, std::__1::optional<unsigned long long>)::'lambda1'()>(__t=<unavailable>)>, int, std::__1::optional<unsigned long long>)::'lambda1'()>&, std::__1::__tuple_indices<>) at thread:273 [opt]
frame #39: 0x0000000100028d68 clickhouse`void* std::__1::__thread_proxy<std::__1::tuple<std::__1::unique_ptr<std::__1::__thread_struct, std::__1::default_delete<std::__1::__thread_struct> >, void ThreadPoolImpl<std::__1::thread>::scheduleImpl<void>(std::__1::function<void ()>, int, std::__1::optional<unsigned long long>)::'lambda1'()> >(__vp=0x0000000112c686e0) at thread:284 [opt]
frame #40: 0x00007fff675ff109 libsystem_pthread.dylib`_pthread_start + 148
frame #41: 0x00007fff675fab8b libsystem_pthread.dylib`thread_start + 15
(lldb) child
error: 'child' is not a valid command.
(lldb) thread 11
invalid command 'thread 11'.
(lldb) t 11
* thread #11, name = 'QueryPipelineEx', stop reason = EXC_BAD_ACCESS (code=1, address=0x0)
frame #0: 0x00000001036215ed clickhouse`DB::KafkaBlockOutputStream::writeSuffix(this=0x0000000114072498) at KafkaBlockOutputStream.cpp:45:12 [opt]
42
43 void KafkaBlockOutputStream::writeSuffix()
44 {
-> 45 child->writeSuffix();
46 flush();
47 }
48
(lldb) p child
(DB::BlockOutputStreamPtr) $0 = nullptr {
__ptr_ = 0x0000000000000000
}
Additional context
Add any other context about the problem here.