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

Column expression is not initialized error #68650

Closed
PedroTadim opened this issue Aug 21, 2024 · 0 comments · Fixed by #70124
Closed

Column expression is not initialized error #68650

PedroTadim opened this issue Aug 21, 2024 · 0 comments · Fixed by #70124
Assignees
Labels
analyzer Issues and pull-requests related to new analyzer fuzz Problem found by one of the fuzzers testing Special issue with list of bugs found by CI

Comments

@PedroTadim
Copy link
Contributor

PedroTadim commented Aug 21, 2024

Describe the bug
A Column expression is not initialized logical error while parsing a query on debug builds.

How to reproduce
Run:

CREATE TABLE t0 (c0 Int) ENGINE = Memory();
SELECT 1 FROM t0 JOIN t0 ON *;
/*
<Fatal> : Logical error: 'Column expression is not initialized'.
*/

Here is the full stack trace:

0. contrib/llvm-project/libcxx/include/exception:141: Poco::Exception::Exception(String const&, int) @ 0x00000000274ac031
1. src/Common/Exception.cpp:111: DB::Exception::Exception(DB::Exception::MessageMasked&&, int, bool) @ 0x00000000160ee12d
2. contrib/llvm-project/libcxx/include/string:1499: DB::Exception::Exception(PreformattedMessage&&, int) @ 0x0000000006bc3d26
3. src/Common/LoggingFormatStringHelpers.h:45: DB::Exception::Exception<>(int, FormatStringHelperImpl<>) @ 0x0000000006bcbf4f
4. src/Analyzer/ColumnNode.h:90: DB::ColumnNode::getExpressionOrThrow() @ 0x0000000021ce513e
5. contrib/llvm-project/libcxx/include/__memory/shared_ptr.h:815: DB::(anonymous namespace)::buildQueryPlanForJoinNode(std::shared_ptr<DB::IQueryTreeNode> const&, DB::JoinTreeQueryPlan, DB::JoinTreeQueryPlan, std::unordered_set<String, std::hash<String>, std::equal_to<String>, std::allocator<String>> const&, std::shared_ptr<DB::PlannerContext>&) @ 0x0000000022d7b33a
6. src/Planner/PlannerJoinTree.cpp:0: DB::buildJoinTreeQueryPlan(std::shared_ptr<DB::IQueryTreeNode> const&, DB::SelectQueryInfo const&, DB::SelectQueryOptions&, std::unordered_set<String, std::hash<String>, std::equal_to<String>, std::allocator<String>> const&, std::shared_ptr<DB::PlannerContext>&) @ 0x0000000022d6768d
7. src/Planner/Planner.cpp:0: DB::Planner::buildPlanForQueryNode() @ 0x0000000022d3744e
8. src/Planner/Planner.cpp:1254: DB::Planner::buildQueryPlanIfNeeded() @ 0x0000000022d316fb
9. src/Planner/Planner.h:44: DB::InterpreterSelectQueryAnalyzer::getQueryPlan() @ 0x0000000022d2ccb2
10. src/Interpreters/executeQuery.cpp:1180: DB::executeQueryImpl(char const*, char const*, std::shared_ptr<DB::Context>, DB::QueryFlags, DB::QueryProcessingStage::Enum, DB::ReadBuffer*) @ 0x0000000023318736
11. src/Interpreters/executeQuery.cpp:1395: DB::executeQuery(String const&, std::shared_ptr<DB::Context>, DB::QueryFlags, DB::QueryProcessingStage::Enum) @ 0x0000000023312209
12. src/Client/LocalConnection.cpp:0: DB::LocalConnection::sendQuery(DB::ConnectionTimeouts const&, String const&, std::unordered_map<String, String, std::hash<String>, std::equal_to<String>, std::allocator<std::pair<String const, String>>> const&, String const&, unsigned long, DB::Settings const*, DB::ClientInfo const*, bool, std::function<void (DB::Progress const&)>) @ 0x0000000025ddecdc
13. src/Client/ClientBase.cpp:1040: DB::ClientBase::processOrdinaryQuery(String const&, std::shared_ptr<DB::IAST>) @ 0x0000000025d12624
14. src/Client/ClientBase.cpp:0: DB::ClientBase::processParsedSingleQuery(String const&, String const&, std::shared_ptr<DB::IAST>, std::optional<bool>, bool) @ 0x0000000025d0f282
15. src/Client/ClientBase.cpp:2275: DB::ClientBase::executeMultiQuery(String const&) @ 0x0000000025d25adc
16. src/Client/ClientBase.cpp:0: DB::ClientBase::processQueryText(String const&) @ 0x0000000025d27942
17. src/Client/ClientBase.cpp:2645: DB::ClientBase::runInteractive() @ 0x0000000025d2adb2
18. contrib/llvm-project/libcxx/include/string:1499: DB::LocalServer::main(std::vector<String, std::allocator<String>> const&) @ 0x000000001656f035
19. base/poco/Util/src/Application.cpp:0: Poco::Util::Application::run() @ 0x00000000276b3417
20. programs/local/LocalServer.cpp:0: mainEntryClickHouseLocal(int, char**) @ 0x000000001658024a
21. programs/main.cpp:0: main @ 0x0000000006bb32d6
22. ? @ 0x00007ea30e42a1ca
23. ? @ 0x00007ea30e42a28b
24. _start @ 0x0000000006ae202e

2024.08.21 12:31:07.859619 [ 1651656 ] {} <Fatal> ClientBase: ########## Short fault info ############
2024.08.21 12:31:07.859730 [ 1651656 ] {} <Fatal> ClientBase: (version 24.9.1.1, build id: , git hash: ) (from thread 1651640) Received signal 6
2024.08.21 12:31:07.859757 [ 1651656 ] {} <Fatal> ClientBase: Signal description: Aborted
2024.08.21 12:31:07.859785 [ 1651656 ] {} <Fatal> ClientBase: 
2024.08.21 12:31:07.859846 [ 1651656 ] {} <Fatal> ClientBase: Stack trace: 0x000055d034644aad 0x000055d034b71b52 0x00007ea30e445320 0x00007ea30e49eb1d 0x00007ea30e44526e 0x00007ea30e4288ff 0x000055d0345e5de8 0x000055d0345e75ff 0x000055d0250bcd26 0x000055d0250c4f4f 0x000055d0401de13e 0x000055d04127433a 0x000055d04126068d 0x000055d04123044e 0x000055d04122a6fb 0x000055d041225cb2 0x000055d041811736 0x000055d04180b209 0x000055d0442d7cdc 0x000055d04420b624 0x000055d044208282 0x000055d04421eadc 0x000055d044220942 0x000055d044223db2 0x000055d034a68035 0x000055d045bac417 0x000055d034a7924a 0x000055d0250ac2d6 0x00007ea30e42a1ca 0x00007ea30e42a28b 0x000055d024fdb02e
2024.08.21 12:31:07.859876 [ 1651656 ] {} <Fatal> ClientBase: ########################################
2024.08.21 12:31:07.859916 [ 1651656 ] {} <Fatal> ClientBase: (version 24.9.1.1, build id: , git hash: ) (from thread 1651640) (query_id: 139bac99-157d-4342-9aff-4b2da6de136f) (query: SELECT 1 FROM t0 JOIN t0 ON *;) Received signal Aborted (6)
2024.08.21 12:31:07.859949 [ 1651656 ] {} <Fatal> ClientBase: 
2024.08.21 12:31:07.859978 [ 1651656 ] {} <Fatal> ClientBase: Stack trace: 0x000055d034644aad 0x000055d034b71b52 0x00007ea30e445320 0x00007ea30e49eb1d 0x00007ea30e44526e 0x00007ea30e4288ff 0x000055d0345e5de8 0x000055d0345e75ff 0x000055d0250bcd26 0x000055d0250c4f4f 0x000055d0401de13e 0x000055d04127433a 0x000055d04126068d 0x000055d04123044e 0x000055d04122a6fb 0x000055d041225cb2 0x000055d041811736 0x000055d04180b209 0x000055d0442d7cdc 0x000055d04420b624 0x000055d044208282 0x000055d04421eadc 0x000055d044220942 0x000055d044223db2 0x000055d034a68035 0x000055d045bac417 0x000055d034a7924a 0x000055d0250ac2d6 0x00007ea30e42a1ca 0x00007ea30e42a28b 0x000055d024fdb02e
2024.08.21 12:31:07.901187 [ 1651656 ] {} <Fatal> ClientBase: 0.0. inlined from src/Common/StackTrace.cpp:349: StackTrace::tryCapture()
2024.08.21 12:31:07.901235 [ 1651656 ] {} <Fatal> ClientBase: 0. src/Common/StackTrace.cpp:318: StackTrace::StackTrace(ucontext_t const&) @ 0x000000001614baad
2024.08.21 12:31:07.956137 [ 1651656 ] {} <Fatal> ClientBase: 1. src/Common/SignalHandlers.cpp:0: signalHandler(int, siginfo_t*, void*) @ 0x0000000016678b52
2024.08.21 12:31:07.956169 [ 1651656 ] {} <Fatal> ClientBase: 2. ? @ 0x00007ea30e445320
2024.08.21 12:31:07.956190 [ 1651656 ] {} <Fatal> ClientBase: 3. ? @ 0x00007ea30e49eb1d
2024.08.21 12:31:07.956208 [ 1651656 ] {} <Fatal> ClientBase: 4. ? @ 0x00007ea30e44526e
2024.08.21 12:31:07.956229 [ 1651656 ] {} <Fatal> ClientBase: 5. ? @ 0x00007ea30e4288ff
2024.08.21 12:31:08.035616 [ 1651656 ] {} <Fatal> ClientBase: 6.0. inlined from contrib/llvm-project/libcxx/include/atomic:958: int std::__cxx_atomic_load[abi:v15007]<int>(std::__cxx_atomic_base_impl<int> const*, std::memory_order)
2024.08.21 12:31:08.035664 [ 1651656 ] {} <Fatal> ClientBase: 6.1. inlined from contrib/llvm-project/libcxx/include/atomic:1560: std::__atomic_base<int, false>::load[abi:v15007](std::memory_order) const
2024.08.21 12:31:08.035701 [ 1651656 ] {} <Fatal> ClientBase: 6.2. inlined from contrib/llvm-project/libcxx/include/atomic:1564: std::__atomic_base<int, false>::operator int[abi:v15007]() const
2024.08.21 12:31:08.035737 [ 1651656 ] {} <Fatal> ClientBase: 6.3. inlined from base/poco/Foundation/include/Poco/Logger.h:2354: Poco::Logger::is(int) const
2024.08.21 12:31:08.035765 [ 1651656 ] {} <Fatal> ClientBase: 6. src/Common/Exception.cpp:47: DB::abortOnFailedAssertion(String const&, void* const*, unsigned long, unsigned long) @ 0x00000000160ecde8
2024.08.21 12:31:08.108438 [ 1651656 ] {} <Fatal> ClientBase: 7. src/Common/Exception.cpp:111: DB::Exception::Exception(DB::Exception::MessageMasked&&, int, bool) @ 0x00000000160ee5ff
2024.08.21 12:31:08.145953 [ 1651656 ] {} <Fatal> ClientBase: 8.0. inlined from contrib/llvm-project/libcxx/include/string:1499: String::__is_long[abi:v15007]() const
2024.08.21 12:31:08.145995 [ 1651656 ] {} <Fatal> ClientBase: 8.1. inlined from contrib/llvm-project/libcxx/include/string:2333: ~basic_string
2024.08.21 12:31:08.146021 [ 1651656 ] {} <Fatal> ClientBase: 8.2. inlined from src/Common/Exception.h:98: ~MessageMasked
2024.08.21 12:31:08.146046 [ 1651656 ] {} <Fatal> ClientBase: 8.3. inlined from src/Common/Exception.h:110: Exception
2024.08.21 12:31:08.146073 [ 1651656 ] {} <Fatal> ClientBase: 8. src/Common/Exception.h:63: DB::Exception::Exception(PreformattedMessage&&, int) @ 0x0000000006bc3d26
2024.08.21 12:31:08.189495 [ 1651656 ] {} <Fatal> ClientBase: 9.0. inlined from src/Common/LoggingFormatStringHelpers.h:45: ~PreformattedMessage
2024.08.21 12:31:08.189534 [ 1651656 ] {} <Fatal> ClientBase: 9. src/Common/Exception.h:128: DB::Exception::Exception<>(int, FormatStringHelperImpl<>) @ 0x0000000006bcbf4f
2024.08.21 12:31:08.545529 [ 1651656 ] {} <Fatal> ClientBase: 10. src/Analyzer/ColumnNode.h:90: DB::ColumnNode::getExpressionOrThrow() @ 0x0000000021ce513e
2024.08.21 12:31:08.807414 [ 1651656 ] {} <Fatal> ClientBase: 11.0. inlined from contrib/llvm-project/libcxx/include/__memory/shared_ptr.h:815: std::shared_ptr<DB::IQueryTreeNode>::operator->[abi:v15007]() const
2024.08.21 12:31:08.807473 [ 1651656 ] {} <Fatal> ClientBase: 11. src/Planner/PlannerJoinTree.cpp:1237: DB::(anonymous namespace)::buildQueryPlanForJoinNode(std::shared_ptr<DB::IQueryTreeNode> const&, DB::JoinTreeQueryPlan, DB::JoinTreeQueryPlan, std::unordered_set<String, std::hash<String>, std::equal_to<String>, std::allocator<String>> const&, std::shared_ptr<DB::PlannerContext>&) @ 0x0000000022d7b33a
2024.08.21 12:31:09.063026 [ 1651656 ] {} <Fatal> ClientBase: 12. src/Planner/PlannerJoinTree.cpp:0: DB::buildJoinTreeQueryPlan(std::shared_ptr<DB::IQueryTreeNode> const&, DB::SelectQueryInfo const&, DB::SelectQueryOptions&, std::unordered_set<String, std::hash<String>, std::equal_to<String>, std::allocator<String>> const&, std::shared_ptr<DB::PlannerContext>&) @ 0x0000000022d6768d
2024.08.21 12:31:09.226066 [ 1651656 ] {} <Fatal> ClientBase: 13. src/Planner/Planner.cpp:0: DB::Planner::buildPlanForQueryNode() @ 0x0000000022d3744e
2024.08.21 12:31:09.377795 [ 1651656 ] {} <Fatal> ClientBase: 14. src/Planner/Planner.cpp:1254: DB::Planner::buildQueryPlanIfNeeded() @ 0x0000000022d316fb
2024.08.21 12:31:09.445405 [ 1651656 ] {} <Fatal> ClientBase: 15.0. inlined from src/Planner/Planner.h:44: DB::Planner::getQueryPlan()
2024.08.21 12:31:09.445444 [ 1651656 ] {} <Fatal> ClientBase: 15. src/Interpreters/InterpreterSelectQueryAnalyzer.cpp:235: DB::InterpreterSelectQueryAnalyzer::getQueryPlan() @ 0x0000000022d2ccb2
2024.08.21 12:31:09.646356 [ 1651656 ] {} <Fatal> ClientBase: 16. src/Interpreters/executeQuery.cpp:1180: DB::executeQueryImpl(char const*, char const*, std::shared_ptr<DB::Context>, DB::QueryFlags, DB::QueryProcessingStage::Enum, DB::ReadBuffer*) @ 0x0000000023318736
2024.08.21 12:31:09.870731 [ 1651656 ] {} <Fatal> ClientBase: 17. src/Interpreters/executeQuery.cpp:1395: DB::executeQuery(String const&, std::shared_ptr<DB::Context>, DB::QueryFlags, DB::QueryProcessingStage::Enum) @ 0x0000000023312209
2024.08.21 12:31:09.952656 [ 1651656 ] {} <Fatal> ClientBase: 18. src/Client/LocalConnection.cpp:0: DB::LocalConnection::sendQuery(DB::ConnectionTimeouts const&, String const&, std::unordered_map<String, String, std::hash<String>, std::equal_to<String>, std::allocator<std::pair<String const, String>>> const&, String const&, unsigned long, DB::Settings const*, DB::ClientInfo const*, bool, std::function<void (DB::Progress const&)>) @ 0x0000000025ddecdc
2024.08.21 12:31:10.177032 [ 1651656 ] {} <Fatal> ClientBase: 19. src/Client/ClientBase.cpp:1040: DB::ClientBase::processOrdinaryQuery(String const&, std::shared_ptr<DB::IAST>) @ 0x0000000025d12624
2024.08.21 12:31:10.408622 [ 1651656 ] {} <Fatal> ClientBase: 20. src/Client/ClientBase.cpp:0: DB::ClientBase::processParsedSingleQuery(String const&, String const&, std::shared_ptr<DB::IAST>, std::optional<bool>, bool) @ 0x0000000025d0f282
2024.08.21 12:31:10.713825 [ 1651656 ] {} <Fatal> ClientBase: 21. src/Client/ClientBase.cpp:2275: DB::ClientBase::executeMultiQuery(String const&) @ 0x0000000025d25adc
2024.08.21 12:31:11.020744 [ 1651656 ] {} <Fatal> ClientBase: 22. src/Client/ClientBase.cpp:0: DB::ClientBase::processQueryText(String const&) @ 0x0000000025d27942
2024.08.21 12:31:11.239390 [ 1651656 ] {} <Fatal> ClientBase: 23. src/Client/ClientBase.cpp:2645: DB::ClientBase::runInteractive() @ 0x0000000025d2adb2
2024.08.21 12:31:11.315434 [ 1651656 ] {} <Fatal> ClientBase: 24.0. inlined from contrib/llvm-project/libcxx/include/string:1499: String::__is_long[abi:v15007]() const
2024.08.21 12:31:11.315474 [ 1651656 ] {} <Fatal> ClientBase: 24.1. inlined from contrib/llvm-project/libcxx/include/string:2333: ~basic_string
2024.08.21 12:31:11.315516 [ 1651656 ] {} <Fatal> ClientBase: 24. programs/local/LocalServer.cpp:565: DB::LocalServer::main(std::vector<String, std::allocator<String>> const&) @ 0x000000001656f035
2024.08.21 12:31:11.341548 [ 1651656 ] {} <Fatal> ClientBase: 25. base/poco/Util/src/Application.cpp:0: Poco::Util::Application::run() @ 0x00000000276b3417
2024.08.21 12:31:11.497606 [ 1651656 ] {} <Fatal> ClientBase: 26. programs/local/LocalServer.cpp:0: mainEntryClickHouseLocal(int, char**) @ 0x000000001658024a
2024.08.21 12:31:11.503855 [ 1651656 ] {} <Fatal> ClientBase: 27. programs/main.cpp:0: main @ 0x0000000006bb32d6
2024.08.21 12:31:11.503886 [ 1651656 ] {} <Fatal> ClientBase: 28. ? @ 0x00007ea30e42a1ca
2024.08.21 12:31:11.503904 [ 1651656 ] {} <Fatal> ClientBase: 29. ? @ 0x00007ea30e42a28b
2024.08.21 12:31:11.562323 [ 1651656 ] {} <Fatal> ClientBase: 30. _start @ 0x0000000006ae202e
2024.08.21 12:31:11.562371 [ 1651656 ] {} <Fatal> ClientBase: This ClickHouse version is not official and should be upgraded to the official build.
2024.08.21 12:31:11.562549 [ 1651656 ] {} <Fatal> ClientBase: Changed settings: allow_introspection_functions = true, storage_file_read_method = 'mmap'
Aborted (core dumped)
@PedroTadim PedroTadim added the fuzz Problem found by one of the fuzzers label Aug 21, 2024
@nikitamikhaylov nikitamikhaylov added the testing Special issue with list of bugs found by CI label Aug 22, 2024
@KochetovNicolai KochetovNicolai added the analyzer Issues and pull-requests related to new analyzer label Sep 23, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
analyzer Issues and pull-requests related to new analyzer fuzz Problem found by one of the fuzzers testing Special issue with list of bugs found by CI
Projects
None yet
Development

Successfully merging a pull request may close this issue.

4 participants