Skip to content

Cross join failed with the error 'COMMA to CROSS JOIN rewriter is not enabled or cannot rewrite query' #9863

@vladimir-golovchenko

Description

@vladimir-golovchenko

Cross join failed with the error 'COMMA to CROSS JOIN rewriter is not enabled or cannot rewrite query'.

These queries works:

SELECT *
FROM (
  SELECT dummy, name
  FROM system.one, system.columns) oc, system.formats;

SELECT *
FROM (
  SELECT dummy, name
  FROM system.one, system.columns, system.tables) oct; 

This one failed:

SELECT *
FROM (
  SELECT dummy, name
  FROM system.one, system.columns, system.tables) oct, system.formats; 

with error:

Received exception from server (version 20.3.4):
Code: 48. DB::Exception: Received from localhost:9000. DB::Exception: COMMA to CROSS JOIN rewriter is not enabled or cannot rewrite query. Stack trace:

0. Poco::Exception::Exception(std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > const&, int) @ 0x102e0d8c in /usr/bin/clickhouse
1. DB::Exception::Exception(std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > const&, int) @ 0x8f2d989 in /usr/bin/clickhouse
2. ? @ 0xd2c2067 in /usr/bin/clickhouse
3. DB::JoinToSubqueryTransformMatcher::visit(DB::ASTSelectQuery&, std::__1::shared_ptr<DB::IAST>&, DB::JoinToSubqueryTransformMatcher::Data&) @ 0xd2bf201 in /usr/bin/clickhouse
4. DB::JoinToSubqueryTransformMatcher::visit(std::__1::shared_ptr<DB::IAST>&, DB::JoinToSubqueryTransformMatcher::Data&) @ 0xd2c1d5f in /usr/bin/clickhouse
5. DB::InDepthNodeVisitor<DB::JoinToSubqueryTransformMatcher, true, std::__1::shared_ptr<DB::IAST> >::visit(std::__1::shared_ptr<DB::IAST>&) @ 0xcfc8585 in /usr/bin/clickhouse
6. DB::InDepthNodeVisitor<DB::JoinToSubqueryTransformMatcher, true, std::__1::shared_ptr<DB::IAST> >::visit(std::__1::shared_ptr<DB::IAST>&) @ 0xcfc85a3 in /usr/bin/clickhouse
7. DB::InDepthNodeVisitor<DB::JoinToSubqueryTransformMatcher, true, std::__1::shared_ptr<DB::IAST> >::visit(std::__1::shared_ptr<DB::IAST>&) @ 0xcfc85a3 in /usr/bin/clickhouse
8. DB::InDepthNodeVisitor<DB::JoinToSubqueryTransformMatcher, true, std::__1::shared_ptr<DB::IAST> >::visit(std::__1::shared_ptr<DB::IAST>&) @ 0xcfc85a3 in /usr/bin/clickhouse
9. DB::InDepthNodeVisitor<DB::JoinToSubqueryTransformMatcher, true, std::__1::shared_ptr<DB::IAST> >::visit(std::__1::shared_ptr<DB::IAST>&) @ 0xcfc85a3 in /usr/bin/clickhouse
10. DB::InDepthNodeVisitor<DB::JoinToSubqueryTransformMatcher, true, std::__1::shared_ptr<DB::IAST> >::visit(std::__1::shared_ptr<DB::IAST>&) @ 0xcfc85a3 in /usr/bin/clickhouse
11. DB::InDepthNodeVisitor<DB::JoinToSubqueryTransformMatcher, true, std::__1::shared_ptr<DB::IAST> >::visit(std::__1::shared_ptr<DB::IAST>&) @ 0xcfc85a3 in /usr/bin/clickhouse
12. DB::InDepthNodeVisitor<DB::JoinToSubqueryTransformMatcher, true, std::__1::shared_ptr<DB::IAST> >::visit(std::__1::shared_ptr<DB::IAST>&) @ 0xcfc85a3 in /usr/bin/clickhouse
13. DB::InterpreterSelectQuery::InterpreterSelectQuery(std::__1::shared_ptr<DB::IAST> const&, DB::Context const&, std::__1::shared_ptr<DB::IBlockInputStream> const&, std::__1::optional<DB::Pipe>, std::__1::shared_ptr<DB::IStorage> const&, DB::SelectQueryOptions const&, std::__1::vector<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, std::__1::allocator<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > > > const&) @ 0xcfbae47 in /usr/bin/clickhouse
14. DB::InterpreterSelectQuery::InterpreterSelectQuery(std::__1::shared_ptr<DB::IAST> const&, DB::Context const&, DB::SelectQueryOptions const&, std::__1::vector<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, std::__1::allocator<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > > > const&) @ 0xcfbb965 in /usr/bin/clickhouse
15. DB::InterpreterSelectWithUnionQuery::InterpreterSelectWithUnionQuery(std::__1::shared_ptr<DB::IAST> const&, DB::Context const&, DB::SelectQueryOptions const&, std::__1::vector<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, std::__1::allocator<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > > > const&) @ 0xd1b75a6 in /usr/bin/clickhouse
16. DB::InterpreterFactory::get(std::__1::shared_ptr<DB::IAST>&, DB::Context&, DB::QueryProcessingStage::Enum) @ 0xcf0fbf4 in /usr/bin/clickhouse
17. ? @ 0xd3b42d5 in /usr/bin/clickhouse
18. DB::executeQuery(std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > const&, DB::Context&, bool, DB::QueryProcessingStage::Enum, bool, bool) @ 0xd3b6fcd in /usr/bin/clickhouse
19. DB::TCPHandler::runImpl() @ 0x900a729 in /usr/bin/clickhouse
20. DB::TCPHandler::run() @ 0x900b63c in /usr/bin/clickhouse
21. Poco::Net::TCPServerConnection::start() @ 0xe095ab7 in /usr/bin/clickhouse
22. Poco::Net::TCPServerDispatcher::run() @ 0xe095f1d in /usr/bin/clickhouse
23. Poco::PooledThread::run() @ 0x1036af7f in /usr/bin/clickhouse
24. Poco::ThreadImpl::runnableEntry(void*) @ 0x10366fc8 in /usr/bin/clickhouse
25. ? @ 0x10368869 in /usr/bin/clickhouse
26. start_thread @ 0x76db in /lib/x86_64-linux-gnu/libpthread-2.27.so
27. __clone @ 0x12188f in /lib/x86_64-linux-gnu/libc-2.27.so

[CH 20.3.4.10]

Metadata

Metadata

Assignees

No one assigned

    Labels

    bugConfirmed user-visible misbehaviour in official releasecomp-joinsJOINs end-to-end (planning hooks + runtime join operators/algorithms). Single bucket to avoid pla...duplicate

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions