ClickHouse/dbms/src/Storages/tests/system_numbers.cpp

47 lines
1.3 KiB
C++
Raw Normal View History

2010-03-04 19:21:31 +00:00
#include <iostream>
#include <IO/WriteBufferFromOStream.h>
#include <Storages/System/StorageSystemNumbers.h>
#include <DataStreams/LimitBlockInputStream.h>
#include <Formats/FormatFactory.h>
#include <DataStreams/copyData.h>
#include <DataTypes/DataTypesNumber.h>
#include <Interpreters/Context.h>
#include <Processors/Executors/TreeExecutorBlockInputStream.h>
2010-03-04 19:21:31 +00:00
2017-12-02 02:47:12 +00:00
int main(int, char **)
try
2010-03-04 19:21:31 +00:00
{
using namespace DB;
2020-03-10 19:36:17 +00:00
StoragePtr table = StorageSystemNumbers::create(StorageID("test", "numbers"), false);
2010-03-05 15:29:17 +00:00
Names column_names;
column_names.push_back("number");
2010-03-05 15:29:17 +00:00
Block sample;
ColumnWithTypeAndName col;
col.type = std::make_shared<DataTypeUInt64>();
sample.insert(std::move(col));
2010-06-04 18:25:25 +00:00
WriteBufferFromOStream out_buf(std::cout);
2012-05-22 18:32:45 +00:00
auto context = Context::createGlobal();
2019-07-08 02:14:32 +00:00
context.makeGlobalContext();
QueryProcessingStage::Enum stage = table->getQueryProcessingStage(context);
auto stream = std::make_shared<TreeExecutorBlockInputStream>(std::move(table->read(column_names, {}, context, stage, 10, 1)[0]));
LimitBlockInputStream input(stream, 10, 96);
BlockOutputStreamPtr out = FormatFactory::instance().getOutput("TabSeparated", out_buf, sample, context);
2015-09-24 03:50:09 +00:00
copyData(input, *out);
2010-03-04 19:21:31 +00:00
return 0;
2010-03-04 19:21:31 +00:00
}
catch (const DB::Exception & e)
{
std::cerr << e.what() << ", " << e.displayText() << std::endl;
return 1;
}