Skip to content

Commit 5e258e4

Browse files
committed
make insert_dependencies as vector in PlanResourceHolder
1 parent 4effd9d commit 5e258e4

File tree

4 files changed

+5
-10
lines changed

4 files changed

+5
-10
lines changed

src/Interpreters/InsertDependenciesBuilder.cpp

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -778,7 +778,7 @@ bool InsertDependenciesBuilder::observePath(const DependencyPath & path)
778778
{
779779
const auto & parent = path.parent(1);
780780
const auto & current = path.current();
781-
LOG_TEST(logger, "collectPath: {}", path.debugString());
781+
LOG_TEST(logger, "observePath: {}", path.debugString());
782782

783783
auto storage = current == init_table_id ? init_storage : DatabaseCatalog::instance().tryGetTable(current, init_context);
784784
auto lock = storage ? storage->tryLockForShare(init_context->getInitialQueryId(), init_context->getSettingsRef()[Setting::lock_acquire_timeout]) : nullptr;
@@ -859,7 +859,7 @@ bool InsertDependenciesBuilder::observePath(const DependencyPath & path)
859859

860860
select_queries[current] = metadata->getSelectQuery().inner_query;
861861
input_headers[current] = output_headers.at(path.parent(2));
862-
// output_headers is filled at next call collectPath(inner_table)
862+
// output_headers is filled at next call observePath(inner_table)
863863

864864
std::tie(select_contexts[current], insert_contexts[current]) = createSelectInsertContext(path);
865865

src/QueryPipeline/Chain.h

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -59,8 +59,7 @@ class Chain
5959
void addInterpreterContext(ContextPtr context) { holder.interpreter_context.emplace_back(std::move(context)); }
6060
void addInsertDependenciesBuilder(InsertDependenciesBuilderConstPtr insert_dependencies)
6161
{
62-
chassert(!holder.insert_dependencies_holder);
63-
holder.insert_dependencies_holder = insert_dependencies;
62+
holder.insert_dependencies_holders.push_back(insert_dependencies);
6463
}
6564

6665

src/QueryPipeline/QueryPlanResourceHolder.cpp

Lines changed: 1 addition & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -13,11 +13,7 @@ QueryPlanResourceHolder & QueryPlanResourceHolder::append(QueryPlanResourceHolde
1313
interpreter_context.insert(interpreter_context.end(),
1414
rhs.interpreter_context.begin(), rhs.interpreter_context.end());
1515
query_id_holders.insert(query_id_holders.end(), rhs.query_id_holders.begin(), rhs.query_id_holders.end());
16-
17-
if (insert_dependencies_holder && rhs.insert_dependencies_holder)
18-
chassert(insert_dependencies_holder == rhs.insert_dependencies_holder);
19-
20-
insert_dependencies_holder = std::move(rhs.insert_dependencies_holder);
16+
insert_dependencies_holders.insert(insert_dependencies_holders.end(), rhs.insert_dependencies_holders.begin(), rhs.insert_dependencies_holders.end());
2117

2218
return *this;
2319
}

src/QueryPipeline/QueryPlanResourceHolder.h

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -35,7 +35,7 @@ struct QueryPlanResourceHolder
3535
std::vector<StoragePtr> storage_holders;
3636
std::vector<TableLockHolder> table_locks;
3737
std::vector<std::shared_ptr<QueryIdHolder>> query_id_holders;
38-
InsertDependenciesBuilderConstPtr insert_dependencies_holder;
38+
std::vector<InsertDependenciesBuilderConstPtr> insert_dependencies_holders;
3939
};
4040

4141
}

0 commit comments

Comments
 (0)