LOGICAL_ERROR: Next task callback is not set for query#84753
LOGICAL_ERROR: Next task callback is not set for query#84753
Conversation
|
Workflow [PR], commit [c585f41] Summary: ❌
|
|
It seems to be relevant to the feature #70659 |
src/Interpreters/DDLTask.cpp
Outdated
| { | ||
| auto query_context = DDLTaskBase::makeQueryContext(from_context, zookeeper); | ||
| query_context->setQueryKind(ClientInfo::QueryKind::SECONDARY_QUERY); | ||
| // Do not set here SECONDARY_QUERY |
There was a problem hiding this comment.
Here is the root cause of the issue.
|
Integration tests (asan, old analyzer, 5/6)required |
|
Let's clarify the context of the problem somewhere in the comments, - the conflict on |
I think, yes, we can create different context for different parts of query. |
Then wouldn't it be easier to create new context for select and use update the query kind there? |
I do not know how. My response was more theoretical. That could be good approach, but I do not know how to implement it. Research is required. |
I assume this is the place where we can update the context and run insert select with it ClickHouse/src/Interpreters/InterpreterCreateQuery.cpp Lines 2229 to 2236 in 9fd86cc |
It does not work. at |
| SCOPE_EXIT({ | ||
| getContext()->setQueryKind(previous_query_kind); | ||
| }); | ||
| getContext()->setQueryKind(ClientInfo::QueryKind::INITIAL_QUERY); |
There was a problem hiding this comment.
Please check CREATE AS SELECT queries (w/o REPLACE). AFAIS, it's different code path and doesn't use Context::setQueryContext()
There was a problem hiding this comment.
I do not understand what do you mean.
InterpreterCreateQuery::doCreateOrReplaceTable also calls fillTableIfNeeded.
|
We got in dead end here. I think that the version on The alternative way is forbid to run |
Let's first, simply prevent replacing |
|
Test |
a new test
03579_create_table_populate_from_s3catchesDB::Exception: Next task callback is not set for query .Stateless tests (amd_binary, old analyzer, s3 storage, DatabaseReplicated, parallel)
It turned out that all
*Clusterfunctions were broken with replicated DDL.Changelog category (leave one):
Changelog entry (a user-readable short description of the changes that goes into CHANGELOG.md):
Fixing exception
LOGICAL_ERROR: Next task callback is not set for queryDocumentation entry for user-facing changes