mirror of
https://github.com/ClickHouse/ClickHouse.git
synced 2024-09-20 16:50:48 +00:00
Use pulling executor in GlobalSubqueriesMatcher
This commit is contained in:
parent
eb4163c1fa
commit
3cce851f18
@ -17,6 +17,7 @@
|
||||
#include <Interpreters/InDepthNodeVisitor.h>
|
||||
#include <Interpreters/IdentifierSemantic.h>
|
||||
#include <Interpreters/Context.h>
|
||||
#include <Processors/Executors/PullingPipelineExecutor.h>
|
||||
|
||||
namespace DB
|
||||
{
|
||||
@ -140,16 +141,15 @@ public:
|
||||
{
|
||||
auto external_table = external_storage_holder->getTable();
|
||||
auto table_out = external_table->write({}, external_table->getInMemoryMetadataPtr(), context);
|
||||
auto stream = interpreter->execute().getInputStream();
|
||||
auto io = interpreter->execute();
|
||||
PullingPipelineExecutor executor(io.pipeline);
|
||||
|
||||
table_out->writePrefix();
|
||||
stream->readPrefix();
|
||||
while (Block block = stream->read())
|
||||
{
|
||||
Block block;
|
||||
while (!executor.pull(block))
|
||||
table_out->write(block);
|
||||
}
|
||||
|
||||
table_out->writeSuffix();
|
||||
stream->readSuffix();
|
||||
}
|
||||
else
|
||||
{
|
||||
|
Loading…
Reference in New Issue
Block a user