MCPcopy Create free account
hub / github.com/ByConity/ByConity / createQueryContext

Function createQueryContext

src/Databases/MySQL/MaterializedMySQLCommon.cpp:193–211  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

191}
192
193ContextMutablePtr createQueryContext(ContextPtr context, bool init_query)
194{
195 Settings new_query_settings = context->getSettings();
196 new_query_settings.insert_allow_materialized_columns = true;
197
198 /// To avoid call AST::format
199 /// TODO: We need to implement the format function for MySQLAST
200 new_query_settings.enable_global_with_statement = false;
201 new_query_settings.force_manipulate_materialized_mysql_table = true;
202
203 auto query_context = Context::createCopy(context);
204 query_context->setSettings(new_query_settings);
205 if (init_query)
206 CurrentThread::QueryScope query_scope(query_context);
207
208 query_context->getClientInfo().query_kind = ClientInfo::QueryKind::SECONDARY_QUERY;
209 query_context->setCurrentQueryId(""); // generate random query_id
210 return query_context;
211}
212
213MaterializedMySQLLogElement createMaterializeMySQLLog(MaterializedMySQLLogElement::EventSource event_source, MaterializedMySQLLogElement::Type type, String database, NameSet tables)
214{

Callers 15

initConsumerSchedulerMethod · 0.85
checkDependenciesMethod · 0.85
tryToExecuteQueryWithTxnFunction · 0.85
cleanOutdatedTablesFunction · 0.85
createTableFunction · 0.85
dumpDataForTablesFunction · 0.85
executeDDLQueryImplMethod · 0.85
doResyncTableMethod · 0.85
commitMethod · 0.85

Calls 3

setCurrentQueryIdMethod · 0.80
getSettingsMethod · 0.45
setSettingsMethod · 0.45

Tested by 6

createOriginalTablesMethod · 0.68
planMethod · 0.68
executeMethod · 0.68
dropTableStatisticsMethod · 0.68
explainMethod · 0.68
loadTableStatisticsMethod · 0.68