Merge branch 'master' into optimize-asynchronous-metric-log

This commit is contained in:
mergify[bot] 2022-04-27 18:27:27 +00:00 committed by GitHub
commit b7e63154df
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
134 changed files with 6562 additions and 309 deletions

View File

@ -328,23 +328,9 @@ if (ENABLE_BUILD_PROFILING)
endif ()
endif ()
if (${CMAKE_VERSION} VERSION_LESS "3.12.4")
# CMake < 3.12 doesn't support setting 20 as a C++ standard version.
# We will add C++ standard controlling flag in CMAKE_CXX_FLAGS manually for now.
if (COMPILER_GCC OR COMPILER_CLANG)
# to make numeric_limits<__int128> works with GCC
set (_CXX_STANDARD "gnu++2a")
else ()
set (_CXX_STANDARD "c++2a")
endif ()
set (CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -std=${_CXX_STANDARD}")
else ()
set (CMAKE_CXX_STANDARD 20)
set (CMAKE_CXX_EXTENSIONS ON) # Same as gnu++2a (ON) vs c++2a (OFF): https://cmake.org/cmake/help/latest/prop_tgt/CXX_EXTENSIONS.html
set (CMAKE_CXX_STANDARD_REQUIRED ON)
endif ()
set (CMAKE_CXX_STANDARD 20)
set (CMAKE_CXX_EXTENSIONS ON) # Same as gnu++2a (ON) vs c++2a (OFF): https://cmake.org/cmake/help/latest/prop_tgt/CXX_EXTENSIONS.html
set (CMAKE_CXX_STANDARD_REQUIRED ON)
set (CMAKE_C_STANDARD 11)
set (CMAKE_C_EXTENSIONS ON)

View File

@ -19,6 +19,7 @@ set (SRCS
errnoToString.cpp
StringRef.cpp
safeExit.cpp
throwError.cpp
)
if (ENABLE_REPLXX)

8
base/base/throwError.cpp Normal file
View File

@ -0,0 +1,8 @@
#include <base/throwError.h>
#include <stdexcept>
[[noreturn]] void throwError(const char * err)
{
throw std::runtime_error(err);
}

View File

@ -1,15 +1,8 @@
#pragma once
#include <stdexcept>
/// Throw DB::Exception-like exception before its definition.
/// DB::Exception derived from Poco::Exception derived from std::exception.
/// DB::Exception generally caught as Poco::Exception. std::exception generally has other catch blocks and could lead to other outcomes.
/// DB::Exception is not defined yet. It'd better to throw Poco::Exception but we do not want to include any big header here, even <string>.
/// So we throw some std::exception instead in the hope its catch block is the same as DB::Exception one.
template <typename T>
[[noreturn]] inline void throwError(const T & err)
{
throw std::runtime_error(err);
}
[[noreturn]] void throwError(const char * err);

View File

@ -2,10 +2,6 @@
option (ENABLE_CLANG_TIDY "Use clang-tidy static analyzer" OFF)
if (ENABLE_CLANG_TIDY)
if (${CMAKE_VERSION} VERSION_LESS "3.6.0")
message(FATAL_ERROR "clang-tidy requires CMake version at least 3.6.")
endif()
find_program (CLANG_TIDY_PATH NAMES "clang-tidy" "clang-tidy-13" "clang-tidy-12" "clang-tidy-11" "clang-tidy-10" "clang-tidy-9" "clang-tidy-8")
if (CLANG_TIDY_PATH)

View File

@ -1,22 +1,15 @@
if (CMAKE_SYSTEM_PROCESSOR MATCHES "amd64|x86_64")
if (CMAKE_LIBRARY_ARCHITECTURE MATCHES "i386")
message (FATAL_ERROR "32bit platforms are not supported")
endif ()
set (ARCH_AMD64 1)
endif ()
if (CMAKE_SYSTEM_PROCESSOR MATCHES "^(aarch64.*|AARCH64.*|arm64.*|ARM64.*)")
elseif (CMAKE_SYSTEM_PROCESSOR MATCHES "^(aarch64.*|AARCH64.*|arm64.*|ARM64.*)")
set (ARCH_AARCH64 1)
endif ()
if (ARCH_AARCH64 OR CMAKE_SYSTEM_PROCESSOR MATCHES "arm")
set (ARCH_ARM 1)
endif ()
if (CMAKE_LIBRARY_ARCHITECTURE MATCHES "i386")
set (ARCH_I386 1)
endif ()
if ((ARCH_ARM AND NOT ARCH_AARCH64) OR ARCH_I386)
message (FATAL_ERROR "32bit platforms are not supported")
endif ()
if (CMAKE_SYSTEM_PROCESSOR MATCHES "^(ppc64le.*|PPC64LE.*)")
elseif (CMAKE_SYSTEM_PROCESSOR MATCHES "^(ppc64le.*|PPC64LE.*)")
set (ARCH_PPC64LE 1)
endif ()
if (CMAKE_SYSTEM_PROCESSOR MATCHES "riscv64")
elseif (CMAKE_SYSTEM_PROCESSOR MATCHES "riscv64")
set (ARCH_RISCV64 1)
else ()
message (FATAL_ERROR "Platform ${CMAKE_SYSTEM_PROCESSOR} is not supported")
endif ()

View File

@ -61,7 +61,7 @@ else ()
endif ()
if (ARCH_PPC64LE)
set (COMPILER_FLAGS "${COMPILER_FLAGS} -maltivec -D__SSE2__=1 -DNO_WARN_X86_INTRINSICS")
set (COMPILER_FLAGS "${COMPILER_FLAGS} -maltivec -mcpu=power8 -D__SSE2__=1 -DNO_WARN_X86_INTRINSICS")
endif ()
set (TEST_FLAG "-msse4.2")

View File

@ -13,7 +13,7 @@ execute_process(COMMAND ${CMAKE_CXX_COMPILER} --version)
if (COMPILER_GCC)
# Require minimum version of gcc
set (GCC_MINIMUM_VERSION 11)
if (CMAKE_CXX_COMPILER_VERSION VERSION_LESS ${GCC_MINIMUM_VERSION} AND NOT CMAKE_VERSION VERSION_LESS 2.8.9)
if (CMAKE_CXX_COMPILER_VERSION VERSION_LESS ${GCC_MINIMUM_VERSION})
message (FATAL_ERROR "GCC version must be at least ${GCC_MINIMUM_VERSION}. For example, if GCC ${GCC_MINIMUM_VERSION} is available under gcc-${GCC_MINIMUM_VERSION}, g++-${GCC_MINIMUM_VERSION} names, do the following: export CC=gcc-${GCC_MINIMUM_VERSION} CXX=g++-${GCC_MINIMUM_VERSION}; rm -rf CMakeCache.txt CMakeFiles; and re run cmake or ./release.")
endif ()

View File

@ -17,7 +17,7 @@ services:
- type: ${keeper_fs:-tmpfs}
source: ${keeper_db_dir1:-}
target: /var/lib/clickhouse-keeper
entrypoint: "${keeper_cmd_prefix:-} --config=/etc/clickhouse-keeper/keeper_config1.xml --log-file=/var/log/clickhouse-keeper/clickhouse-keeper.log --errorlog-file=/var/log/clickhouse-keeper/clickhouse-keeper.err.log"
entrypoint: "${keeper_cmd_prefix:-clickhouse keeper} --config=/etc/clickhouse-keeper/keeper_config1.xml --log-file=/var/log/clickhouse-keeper/clickhouse-keeper.log --errorlog-file=/var/log/clickhouse-keeper/clickhouse-keeper.err.log"
cap_add:
- SYS_PTRACE
- NET_ADMIN
@ -47,7 +47,7 @@ services:
- type: ${keeper_fs:-tmpfs}
source: ${keeper_db_dir2:-}
target: /var/lib/clickhouse-keeper
entrypoint: "${keeper_cmd_prefix:-} --config=/etc/clickhouse-keeper/keeper_config2.xml --log-file=/var/log/clickhouse-keeper/clickhouse-keeper.log --errorlog-file=/var/log/clickhouse-keeper/clickhouse-keeper.err.log"
entrypoint: "${keeper_cmd_prefix:-clickhouse keeper} --config=/etc/clickhouse-keeper/keeper_config2.xml --log-file=/var/log/clickhouse-keeper/clickhouse-keeper.log --errorlog-file=/var/log/clickhouse-keeper/clickhouse-keeper.err.log"
cap_add:
- SYS_PTRACE
- NET_ADMIN
@ -77,7 +77,7 @@ services:
- type: ${keeper_fs:-tmpfs}
source: ${keeper_db_dir3:-}
target: /var/lib/clickhouse-keeper
entrypoint: "${keeper_cmd_prefix:-} --config=/etc/clickhouse-keeper/keeper_config3.xml --log-file=/var/log/clickhouse-keeper/clickhouse-keeper.log --errorlog-file=/var/log/clickhouse-keeper/clickhouse-keeper.err.log"
entrypoint: "${keeper_cmd_prefix:-clickhouse keeper} --config=/etc/clickhouse-keeper/keeper_config3.xml --log-file=/var/log/clickhouse-keeper/clickhouse-keeper.log --errorlog-file=/var/log/clickhouse-keeper/clickhouse-keeper.err.log"
cap_add:
- SYS_PTRACE
- NET_ADMIN

View File

@ -75,7 +75,7 @@ This will create the `programs/clickhouse` executable, which can be used with `c
The build requires the following components:
- Git (is used only to checkout the sources, its not needed for the build)
- CMake 3.10 or newer
- CMake 3.14 or newer
- Ninja
- C++ compiler: clang-13 or newer
- Linker: lld

View File

@ -1,4 +1,4 @@
# Integrating Rust libraries into ClickHouse.
# Integrating Rust libraries
Rust library integration will be described based on BLAKE3 hash-function integration.

View File

@ -13,6 +13,8 @@ Columns:
- `memory_usage` (UInt64) Amount of RAM the request uses. It might not include some types of dedicated memory. See the [max_memory_usage](../../operations/settings/query-complexity.md#settings_max_memory_usage) setting.
- `query` (String) The query text. For `INSERT`, it does not include the data to insert.
- `query_id` (String) Query ID, if defined.
- `is_cancelled` (Int8) Was query cancelled.
- `is_all_data_sent` (Int8) Was all data sent to the client (in other words query had been finished on the server).
```sql
:) SELECT * FROM system.processes LIMIT 10 FORMAT Vertical;
@ -43,6 +45,7 @@ http_user_agent:
quota_key:
elapsed: 0.000582537
is_cancelled: 0
is_all_data_sent: 0
read_rows: 0
read_bytes: 0
total_rows_approx: 0

View File

@ -322,8 +322,9 @@ def process_benchmark_results(args):
required_keys = {
"dbms": ["result"],
"hardware": ["result", "system", "system_full", "kind"],
"versions": ["version", "system"],
}
for benchmark_kind in ["dbms", "hardware"]:
for benchmark_kind in ["dbms", "hardware", "versions"]:
results = []
results_root = os.path.join(benchmark_root, benchmark_kind, "results")
for result in sorted(os.listdir(results_root)):

View File

@ -1234,6 +1234,7 @@ void ClientBase::sendDataFrom(ReadBuffer & buf, Block & sample, const ColumnsDes
}
void ClientBase::sendDataFromPipe(Pipe&& pipe, ASTPtr parsed_query, bool have_more_data)
try
{
QueryPipeline pipeline(std::move(pipe));
PullingAsyncPipelineExecutor executor(pipeline);
@ -1266,6 +1267,12 @@ void ClientBase::sendDataFromPipe(Pipe&& pipe, ASTPtr parsed_query, bool have_mo
if (!have_more_data)
connection->sendData({}, "", false);
}
catch (...)
{
connection->sendCancel();
receiveEndOfQuery();
throw;
}
void ClientBase::sendDataFromStdin(Block & sample, const ColumnsDescription & columns_description, ASTPtr parsed_query)
{
@ -1406,7 +1413,15 @@ void ClientBase::processParsedSingleQuery(const String & full_query, const Strin
apply_query_settings(*with_output->settings_ast);
if (!connection->checkConnected())
{
auto poco_logs_level = Poco::Logger::parseLevel(config().getString("send_logs_level", "none"));
/// Print under WARNING also because it is used by clickhouse-test.
if (poco_logs_level >= Poco::Message::PRIO_WARNING)
{
fmt::print(stderr, "Connection lost. Reconnecting.\n");
}
connect();
}
ASTPtr input_function;
if (insert && insert->select)

View File

@ -377,9 +377,10 @@ bool Connection::ping()
{
// LOG_TRACE(log_wrapper.get(), "Ping");
TimeoutSetter timeout_setter(*socket, sync_request_timeout, true);
try
{
TimeoutSetter timeout_setter(*socket, sync_request_timeout, true);
UInt64 pong = 0;
writeVarUInt(Protocol::Client::Ping, *out);
out->next();
@ -405,6 +406,10 @@ bool Connection::ping()
}
catch (const Poco::Exception & e)
{
/// Explicitly disconnect since ping() can receive EndOfStream,
/// and in this case this ping() will return false,
/// while next ping() may return true.
disconnect();
LOG_TRACE(log_wrapper.get(), fmt::runtime(e.displayText()));
return false;
}

View File

@ -555,7 +555,7 @@ void LRUFileCache::remove(const Key & key)
fs::remove(key_path);
}
void LRUFileCache::tryRemoveAll()
void LRUFileCache::remove(bool force_remove_unreleasable)
{
/// Try remove all cached files by cache_base_path.
/// Only releasable file segments are evicted.
@ -567,12 +567,13 @@ void LRUFileCache::tryRemoveAll()
auto & [key, offset] = *it++;
auto * cell = getCell(key, offset, cache_lock);
if (cell->releasable())
if (cell->releasable() || force_remove_unreleasable)
{
auto file_segment = cell->file_segment;
if (file_segment)
{
std::lock_guard<std::mutex> segment_lock(file_segment->mutex);
file_segment->detached = true;
remove(file_segment->key(), file_segment->offset(), cache_lock, segment_lock);
}
}

View File

@ -42,7 +42,7 @@ public:
virtual void remove(const Key & key) = 0;
virtual void tryRemoveAll() = 0;
virtual void remove(bool force_remove_unreleasable) = 0;
static bool isReadOnly();
@ -145,7 +145,7 @@ public:
void remove(const Key & key) override;
void tryRemoveAll() override;
void remove(bool force_remove_unreleasable) override;
std::vector<String> tryGetCachePaths(const Key & key) override;

View File

@ -455,6 +455,8 @@ void FileSegment::complete(State state)
std::lock_guard cache_lock(cache->mutex);
std::lock_guard segment_lock(mutex);
assertNotDetached();
bool is_downloader = isDownloaderImpl(segment_lock);
if (!is_downloader)
{
@ -477,8 +479,6 @@ void FileSegment::complete(State state)
download_state = state;
assertNotDetached();
try
{
completeImpl(cache_lock, segment_lock);

View File

@ -52,7 +52,7 @@ private:
{
std::cerr << "Mutating\n";
auto res = shallowMutate();
res->wrapped = IColumn::mutate(wrapped);
res->wrapped = IColumn::mutate(std::move(res->wrapped).detach());
return res;
}

View File

@ -54,9 +54,6 @@ static std::optional<Exception> checkTupleNames(const Strings & names)
if (name.empty())
return Exception("Names of tuple elements cannot be empty", ErrorCodes::BAD_ARGUMENTS);
if (isNumericASCII(name[0]))
return Exception("Explicitly specified names of tuple elements cannot start with digit", ErrorCodes::BAD_ARGUMENTS);
if (!names_set.insert(name).second)
return Exception("Names of tuple elements must be unique", ErrorCodes::DUPLICATE_COLUMN);
}

View File

@ -1,3 +1,4 @@
#include <base/arithmeticOverflow.h>
#include <Common/DateLUTImpl.h>
#include <Columns/ColumnsNumber.h>
#include <DataTypes/DataTypeDate.h>
@ -20,6 +21,7 @@ namespace ErrorCodes
extern const int ILLEGAL_COLUMN;
extern const int ILLEGAL_TYPE_OF_ARGUMENT;
extern const int ARGUMENT_OUT_OF_BOUND;
extern const int DECIMAL_OVERFLOW;
}
@ -217,7 +219,9 @@ namespace
{
if (scale_multiplier < 1000)
{
Int64 t_milliseconds = t * (static_cast<Int64>(1000) / scale_multiplier);
Int64 t_milliseconds = 0;
if (common::mulOverflow(t, static_cast<Int64>(1000) / scale_multiplier, t_milliseconds))
throw DB::Exception("Numeric overflow", ErrorCodes::DECIMAL_OVERFLOW);
if (likely(t >= 0))
return t_milliseconds / milliseconds * milliseconds;
else
@ -252,7 +256,9 @@ namespace
{
if (scale_multiplier < 1000000)
{
Int64 t_microseconds = t * (static_cast<Int64>(1000000) / scale_multiplier);
Int64 t_microseconds = 0;
if (common::mulOverflow(t, static_cast<Int64>(1000000) / scale_multiplier, t_microseconds))
throw DB::Exception("Numeric overflow", ErrorCodes::DECIMAL_OVERFLOW);
if (likely(t >= 0))
return t_microseconds / microseconds * microseconds;
else
@ -287,7 +293,9 @@ namespace
{
if (scale_multiplier < 1000000000)
{
Int64 t_nanoseconds = t * (static_cast<Int64>(1000000000) / scale_multiplier);
Int64 t_nanoseconds = 0;
if (common::mulOverflow(t, (static_cast<Int64>(1000000000) / scale_multiplier), t_nanoseconds))
throw DB::Exception("Numeric overflow", ErrorCodes::DECIMAL_OVERFLOW);
if (likely(t >= 0))
return t_nanoseconds / nanoseconds * nanoseconds;
else

View File

@ -285,7 +285,7 @@ protected:
auto credentials_view = credentials_doc.View();
access_key = credentials_view.GetString("AccessKeyId");
LOG_TRACE(logger, "Successfully pulled credentials from EC2MetadataService with access key {}.", access_key);
LOG_TRACE(logger, "Successfully pulled credentials from EC2MetadataService with access key.");
secret_key = credentials_view.GetString("SecretAccessKey");
token = credentials_view.GetString("Token");
@ -483,7 +483,7 @@ protected:
Aws::Internal::STSCredentialsClient::STSAssumeRoleWithWebIdentityRequest request{session_name, role_arn, token};
auto result = client->GetAssumeRoleWithWebIdentityCredentials(request);
LOG_TRACE(logger, "Successfully retrieved credentials with AWS_ACCESS_KEY: {}", result.creds.GetAWSAccessKeyId());
LOG_TRACE(logger, "Successfully retrieved credentials.");
credentials = result.creds;
}

View File

@ -112,6 +112,8 @@ void WriteBufferFromS3::nextImpl()
}
else
{
for (auto reset_segment_it = file_segment_it; reset_segment_it != file_segments.end(); ++reset_segment_it)
(*reset_segment_it)->complete(FileSegment::State::PARTIALLY_DOWNLOADED_NO_CONTINUATION);
file_segments.erase(file_segment_it, file_segments.end());
break;
}

View File

@ -93,7 +93,7 @@ public:
String http_user_agent;
String http_referer;
/// For mysql
/// For mysql and postgresql
UInt64 connection_id = 0;
/// Comma separated list of forwarded IP addresses (from X-Forwarded-For for HTTP interface).

View File

@ -306,12 +306,12 @@ BlockIO InterpreterSystemQuery::execute()
{
auto caches = FileCacheFactory::instance().getAll();
for (const auto & [_, cache_data] : caches)
cache_data.cache->tryRemoveAll();
cache_data.cache->remove(query.force_removal);
}
else
{
auto cache = FileCacheFactory::instance().get(query.filesystem_cache_path);
cache->tryRemoveAll();
cache->remove(query.force_removal);
}
break;
}

View File

@ -455,6 +455,7 @@ QueryStatusInfo QueryStatus::getInfo(bool get_thread_list, bool get_profile_even
res.client_info = client_info;
res.elapsed_seconds = watch.elapsedSeconds();
res.is_cancelled = is_killed.load(std::memory_order_relaxed);
res.is_all_data_sent = is_all_data_sent.load(std::memory_order_relaxed);
res.read_rows = progress_in.read_rows;
res.read_bytes = progress_in.read_bytes;
res.total_rows = progress_in.total_rows_to_read;

View File

@ -61,6 +61,7 @@ struct QueryStatusInfo
Int64 peak_memory_usage;
ClientInfo client_info;
bool is_cancelled;
bool is_all_data_sent;
/// Optional fields, filled by query
std::vector<UInt64> thread_ids;
@ -101,6 +102,9 @@ protected:
std::atomic<bool> is_killed { false };
/// All data to the client already had been sent. Including EndOfStream.
std::atomic<bool> is_all_data_sent { false };
void setUserProcessList(ProcessListForUser * user_process_list_);
/// Be careful using it. For example, queries field of ProcessListForUser could be modified concurrently.
const ProcessListForUser * getUserProcessList() const { return user_process_list; }
@ -194,6 +198,9 @@ public:
bool isKilled() const { return is_killed; }
bool isAllDataSent() const { return is_all_data_sent; }
void setAllDataSent() { is_all_data_sent = true; }
/// Adds a pipeline to the QueryStatus
void addPipelineExecutor(PipelineExecutor * e);

View File

@ -192,6 +192,13 @@ void ASTSystemQuery::formatImpl(const FormatSettings & settings, FormatState &,
<< (settings.hilite ? hilite_keyword : "") << " SECOND"
<< (settings.hilite ? hilite_none : "");
}
else if (type == Type::DROP_FILESYSTEM_CACHE)
{
if (!filesystem_cache_path.empty())
settings.ostr << (settings.hilite ? hilite_none : "") << filesystem_cache_path;
if (force_removal)
settings.ostr << (settings.hilite ? hilite_keyword : "") << " FORCE";
}
}

View File

@ -89,7 +89,10 @@ public:
String volume;
String disk;
UInt64 seconds{};
/// Values for `drop filesystem cache` system query.
String filesystem_cache_path;
bool force_removal = false;
String getID(char) const override { return "SYSTEM query"; }

View File

@ -355,8 +355,9 @@ bool ParserStorage::parseImpl(Pos & pos, ASTPtr & node, Expected & expected)
ASTPtr settings;
bool storage_like = false;
bool parsed_engine_keyword = s_engine.ignore(pos, expected);
if (s_engine.ignore(pos, expected))
if (parsed_engine_keyword)
{
s_eq.ignore(pos, expected);
@ -422,7 +423,10 @@ bool ParserStorage::parseImpl(Pos & pos, ASTPtr & node, Expected & expected)
return false;
}
if (s_settings.ignore(pos, expected))
/// Do not allow SETTINGS clause without ENGINE,
/// because we cannot distinguish engine settings from query settings in this case.
/// And because settings for each engine are different.
if (parsed_engine_keyword && s_settings.ignore(pos, expected))
{
if (!settings_p.parse(pos, settings, expected))
return false;

View File

@ -346,6 +346,16 @@ bool ParserSystemQuery::parseImpl(IParser::Pos & pos, ASTPtr & node, Expected &
res->seconds = seconds->as<ASTLiteral>()->value.get<UInt64>();
break;
}
case Type::DROP_FILESYSTEM_CACHE:
{
ParserLiteral path_parser;
ASTPtr ast;
if (path_parser.parse(pos, ast, expected))
res->filesystem_cache_path = ast->as<ASTLiteral>()->value.safeGet<String>();
if (ParserKeyword{"FORCE"}.ignore(pos, expected))
res->force_removal = true;
break;
}
default:
{

View File

@ -98,6 +98,8 @@ void SortingStep::updateInputStream(DataStream input_stream)
void SortingStep::updateOutputStream(Block result_header)
{
output_stream = createOutputStream(input_streams.at(0), std::move(result_header), getDataStreamTraits());
output_stream->sort_description = result_description;
output_stream->sort_mode = DataStream::SortMode::Stream;
updateDistinctColumns(output_stream->header, output_stream->distinct_columns);
}

View File

@ -331,7 +331,7 @@ void MySQLHandler::comQuery(ReadBuffer & payload)
ReadBufferFromString replacement(replacement_query);
auto query_context = session->makeQueryContext();
query_context->setCurrentQueryId(Poco::format("mysql:%lu", connection_id));
query_context->setCurrentQueryId(fmt::format("mysql:{}:{}", connection_id, toString(UUIDHelpers::generateV4())));
CurrentThread::QueryScope query_scope{query_context};
std::atomic<size_t> affected_rows {0};
@ -472,7 +472,7 @@ static String selectLimitReplacementQuery(const String & query)
return query;
}
/// Replace "KILL QUERY [connection_id]" into "KILL QUERY WHERE query_id = 'mysql:[connection_id]'".
/// Replace "KILL QUERY [connection_id]" into "KILL QUERY WHERE query_id LIKE 'mysql:[connection_id]:xxx'".
static String killConnectionIdReplacementQuery(const String & query)
{
const String prefix = "KILL QUERY ";
@ -482,7 +482,7 @@ static String killConnectionIdReplacementQuery(const String & query)
static const std::regex expr{"^[0-9]"};
if (std::regex_match(suffix, expr))
{
String replacement = Poco::format("KILL QUERY WHERE query_id = 'mysql:%s'", suffix);
String replacement = fmt::format("KILL QUERY WHERE query_id LIKE 'mysql:{}:%'", suffix);
return replacement;
}
}

View File

@ -58,6 +58,8 @@ void PostgreSQLHandler::run()
session = std::make_unique<Session>(server.context(), ClientInfo::Interface::POSTGRESQL);
SCOPE_EXIT({ session.reset(); });
session->getClientInfo().connection_id = connection_id;
try
{
if (!startup())

View File

@ -31,6 +31,7 @@
#include <Interpreters/InternalTextLogsQueue.h>
#include <Interpreters/OpenTelemetrySpanLog.h>
#include <Interpreters/Session.h>
#include <Interpreters/ProcessList.h>
#include <Server/TCPServer.h>
#include <Storages/StorageReplicatedMergeTree.h>
#include <Storages/MergeTree/MergeTreeDataPartUUID.h>
@ -1710,6 +1711,12 @@ void TCPHandler::sendException(const Exception & e, bool with_stack_trace)
void TCPHandler::sendEndOfStream()
{
state.sent_all_data = true;
/// The following queries does not have process_list_entry:
/// - internal
/// - SHOW PROCESSLIST
if (state.io.process_list_entry)
(*state.io.process_list_entry)->setAllDataSent();
writeVarUInt(Protocol::Server::EndOfStream, *out);
out->next();
}

View File

@ -1414,6 +1414,9 @@ bool IMergeTreeDataPart::assertHasValidVersionMetadata() const
if (part_is_probably_removed_from_disk)
return true;
if (state == State::Temporary)
return true;
DiskPtr disk = volume->getDisk();
if (!disk->exists(getFullRelativePath()))
return true;
@ -1772,6 +1775,7 @@ String IMergeTreeDataPart::getRelativePathForDetachedPart(const String & prefix)
void IMergeTreeDataPart::renameToDetached(const String & prefix) const
{
renameTo(getRelativePathForDetachedPart(prefix), true);
part_is_probably_removed_from_disk = true;
}
void IMergeTreeDataPart::makeCloneInDetached(const String & prefix, const StorageMetadataPtr & /*metadata_snapshot*/) const

View File

@ -44,12 +44,11 @@ bool injectRequiredColumnsRecursively(
if (alter_conversions.isColumnRenamed(column_name_in_part))
column_name_in_part = alter_conversions.getColumnOldName(column_name_in_part);
auto column_in_part = NameAndTypePair(
column_name_in_part, column_in_storage->getSubcolumnName(),
column_in_storage->getTypeInStorage(), column_in_storage->type);
auto column_in_part = part->getColumns().tryGetByName(column_name_in_part);
/// column has files and hence does not require evaluation
if (part->hasColumnFiles(column_in_part))
if (column_in_part
&& (!column_in_storage->isSubcolumn()
|| column_in_part->type->tryGetSubcolumnType(column_in_storage->getSubcolumnName())))
{
/// ensure each column is added only once
if (!required_columns.contains(column_name))

View File

@ -504,4 +504,15 @@ Strings ReplicatedMergeTreeLogEntryData::getVirtualPartNames(MergeTreeDataFormat
return {new_part_name};
}
String ReplicatedMergeTreeLogEntryData::getDescriptionForLogs(MergeTreeDataFormatVersion format_version) const
{
String description = fmt::format("{} with virtual parts [{}]", typeToString(), fmt::join(getVirtualPartNames(format_version), ", "));
if (auto drop_range = getDropRange(format_version))
{
description += " and drop range ";
description += *drop_range;
}
return description;
}
}

View File

@ -144,6 +144,8 @@ struct ReplicatedMergeTreeLogEntryData
/// Returns fake part for drop range (for DROP_RANGE and REPLACE_RANGE)
std::optional<String> getDropRange(MergeTreeDataFormatVersion format_version) const;
String getDescriptionForLogs(MergeTreeDataFormatVersion format_version) const;
/// This entry is DROP PART, not DROP PARTITION. They both have same
/// DROP_RANGE entry type, but differs in information about drop range.
bool isDropPart(MergeTreeDataFormatVersion format_version) const;

View File

@ -213,7 +213,7 @@ void ReplicatedMergeTreeQueue::insertUnlocked(
{
auto entry_virtual_parts = entry->getVirtualPartNames(format_version);
LOG_TEST(log, "Insert entry {} to queue with type {} with virtual parts [{}]", entry->znode_name, entry->typeToString(), fmt::join(entry_virtual_parts, ", "));
LOG_TEST(log, "Insert entry {} to queue with type {}", entry->znode_name, entry->getDescriptionForLogs(format_version));
for (const String & virtual_part_name : entry_virtual_parts)
{
@ -293,9 +293,9 @@ void ReplicatedMergeTreeQueue::updateStateOnQueueEntryRemoval(
{
auto entry_virtual_parts = entry->getVirtualPartNames(format_version);
LOG_TEST(log, "Removing {} entry {} from queue with type {} with virtual parts [{}]",
LOG_TEST(log, "Removing {} entry {} from queue with type {}",
is_successful ? "successful" : "unsuccessful",
entry->znode_name, entry->typeToString(), fmt::join(entry_virtual_parts, ", "));
entry->znode_name, entry->getDescriptionForLogs(format_version));
/// Update insert times.
if (entry->type == LogEntry::GET_PART || entry->type == LogEntry::ATTACH_PART)
{

View File

@ -52,6 +52,7 @@ NamesAndTypesList StorageSystemProcesses::getNamesAndTypes()
{"elapsed", std::make_shared<DataTypeFloat64>()},
{"is_cancelled", std::make_shared<DataTypeUInt8>()},
{"is_all_data_sent", std::make_shared<DataTypeUInt8>()},
{"read_rows", std::make_shared<DataTypeUInt64>()},
{"read_bytes", std::make_shared<DataTypeUInt64>()},
{"total_rows_approx", std::make_shared<DataTypeUInt64>()},
@ -120,6 +121,7 @@ void StorageSystemProcesses::fillData(MutableColumns & res_columns, ContextPtr c
res_columns[i++]->insert(process.elapsed_seconds);
res_columns[i++]->insert(process.is_cancelled);
res_columns[i++]->insert(process.is_all_data_sent);
res_columns[i++]->insert(process.read_rows);
res_columns[i++]->insert(process.read_bytes);
res_columns[i++]->insert(process.total_rows);

View File

@ -225,6 +225,7 @@ def get_processlist_after_test(args):
FROM clusterAllReplicas('test_cluster_database_replicated', system.processes)
WHERE
query NOT LIKE '%system.processes%' AND
NOT is_all_data_sent AND
Settings['log_comment'] = '{log_comment}' AND
current_database = '{database}'
""")
@ -234,6 +235,7 @@ def get_processlist_after_test(args):
FROM system.processes
WHERE
query NOT LIKE '%system.processes%' AND
NOT is_all_data_sent AND
Settings['log_comment'] = '{log_comment}' AND
current_database = '{database}'
""")

View File

@ -10,7 +10,18 @@
<cache_enabled>0</cache_enabled>
<data_cache_max_size>22548578304</data_cache_max_size>
<cache_on_write_operations>1</cache_on_write_operations>
<data_cache_path>./s3_cache/</data_cache_path>
</s3_cache>
<s3_cache_2>
<type>s3</type>
<endpoint>http://localhost:11111/test/00170_test/</endpoint>
<access_key_id>clickhouse</access_key_id>
<secret_access_key>clickhouse</secret_access_key>
<data_cache_enabled>1</data_cache_enabled>
<cache_enabled>0</cache_enabled>
<data_cache_max_size>22548578304</data_cache_max_size>
<cache_on_write_operations>0</cache_on_write_operations>
</s3_cache_2>
</disks>
<policies>
<s3_cache>
@ -20,6 +31,13 @@
</main>
</volumes>
</s3_cache>
<s3_cache_2>
<volumes>
<main>
<disk>s3_cache_2</disk>
</main>
</volumes>
</s3_cache_2>
</policies>
</storage_configuration>
</clickhouse>

View File

@ -1,4 +1,5 @@
<test>
<query>SELECT sipHash64(number) FROM numbers(1e8) ORDER BY number LIMIT 5</query>
<query>SELECT sipHash64(number) FROM numbers(1e8) ORDER BY number + 1 LIMIT 5</query>
<query>SELECT sipHash64(number) FROM numbers(1e8) ORDER BY number + 1 LIMIT 99999995, 5</query>
</test>

View File

@ -1,3 +1,5 @@
-- Tags: no-backward-compatibility-check
DROP TABLE IF EXISTS alter_00061;
CREATE TABLE alter_00061 (d Date, k UInt64, i32 Int32) ENGINE=MergeTree(d, k, 8192);

View File

@ -17,9 +17,10 @@ $CLICKHOUSE_CLIENT --query "CREATE TABLE dst (n UInt64, type UInt8) ENGINE=Merge
function thread_insert()
{
set -e
trap "exit 0" INT
val=1
while true; do
trap "STOP_THE_LOOP=1" INT
STOP_THE_LOOP=0
while [[ $STOP_THE_LOOP != 1 ]]; do
$CLICKHOUSE_CLIENT --multiquery --query "
BEGIN TRANSACTION;
INSERT INTO src VALUES /* ($val, 1) */ ($val, 1);
@ -91,8 +92,9 @@ function thread_partition_dst_to_src()
function thread_select()
{
set -e
trap "exit 0" INT
while true; do
trap "STOP_THE_LOOP=1" INT
STOP_THE_LOOP=0
while [[ $STOP_THE_LOOP != 1 ]]; do
$CLICKHOUSE_CLIENT --multiquery --query "
BEGIN TRANSACTION;
-- no duplicates

View File

@ -50,8 +50,9 @@ function thread_insert_rollback()
function thread_optimize()
{
set -e
trap "exit 0" INT
while true; do
trap "STOP_THE_LOOP=1" INT
STOP_THE_LOOP=0
while [[ $STOP_THE_LOOP != 1 ]]; do
optimize_query="OPTIMIZE TABLE src"
partition_id=$(( RANDOM % 2 ))
if (( RANDOM % 2 )); then
@ -102,8 +103,9 @@ function thread_select()
function thread_select_insert()
{
set -e
trap "exit 0" INT
while true; do
trap "STOP_THE_LOOP=1" INT
STOP_THE_LOOP=0
while [[ $STOP_THE_LOOP != 1 ]]; do
$CLICKHOUSE_CLIENT --multiquery --query "
BEGIN TRANSACTION;
SELECT throwIf((SELECT count() FROM tmp) != 0) FORMAT Null;

View File

@ -4,7 +4,7 @@ drop table if exists mt2;
create table mt1 (n Int64) engine=MergeTree order by n;
create table mt2 (n Int64) engine=MergeTree order by n;
commit; -- { serverError INVALID_TRANSACTION }
commit; -- { serverError INVALID_TRANSACTION } -- no transaction
rollback; -- { serverError INVALID_TRANSACTION }
begin transaction;
@ -31,7 +31,7 @@ select 'on exception before start', arraySort(groupArray(n)) from (select n from
-- rollback on exception before start
select functionThatDoesNotExist(); -- { serverError 46 }
-- cannot commit after exception
commit; -- { serverError INVALID_TRANSACTION }
commit; -- { serverError INVALID_TRANSACTION } -- after 46
begin transaction; -- { serverError INVALID_TRANSACTION }
rollback;
@ -42,7 +42,7 @@ select 'on exception while processing', arraySort(groupArray(n)) from (select n
-- rollback on exception while processing
select throwIf(100 < number) from numbers(1000); -- { serverError 395 }
-- cannot commit after exception
commit; -- { serverError INVALID_TRANSACTION }
commit; -- { serverError INVALID_TRANSACTION } -- after 395
insert into mt1 values (5); -- { serverError INVALID_TRANSACTION }
insert into mt2 values (50); -- { serverError INVALID_TRANSACTION }
select 1; -- { serverError INVALID_TRANSACTION }
@ -52,10 +52,9 @@ begin transaction;
insert into mt1 values (6);
insert into mt2 values (60);
select 'on session close', arraySort(groupArray(n)) from (select n from mt1 union all select * from mt2);
-- trigger reconnection by error on client, check rollback on session close
insert into mt1 values ([1]); -- { clientError 43 }
commit; -- { serverError INVALID_TRANSACTION }
rollback; -- { serverError INVALID_TRANSACTION }
-- INSERT failures does not produce client reconnect anymore, so rollback can be done
rollback;
begin transaction;
insert into mt1 values (7);
@ -82,19 +81,19 @@ rollback;
begin transaction;
create table m (n int) engine=Memory; -- { serverError 48 }
commit; -- { serverError INVALID_TRANSACTION }
commit; -- { serverError INVALID_TRANSACTION } -- after 48
rollback;
create table m (n int) engine=Memory;
begin transaction;
insert into m values (1); -- { serverError 48 }
select * from m; -- { serverError INVALID_TRANSACTION }
commit; -- { serverError INVALID_TRANSACTION }
commit; -- { serverError INVALID_TRANSACTION } -- after 48
rollback;
begin transaction;
select * from m; -- { serverError 48 }
commit; -- { serverError INVALID_TRANSACTION }
commit; -- { serverError INVALID_TRANSACTION } -- after 48
rollback;
drop table m;

View File

@ -35,8 +35,9 @@ function thread_insert_rollback()
function thread_select()
{
trap "exit 0" INT
while true; do
trap "STOP_THE_LOOP=1" INT
STOP_THE_LOOP=0
while [[ $STOP_THE_LOOP != 1 ]]; do
# Result of `uniq | wc -l` must be 1 if the first and the last queries got the same result
$CLICKHOUSE_CLIENT --multiquery --query "
BEGIN TRANSACTION;

View File

@ -7,6 +7,6 @@ INSERT INTO pk (x, y, z) VALUES (1, 11, 1235), (2, 11, 4395), (3, 22, 3545), (4,
SET max_block_size = 1;
SET max_rows_to_read = 5;
SELECT toUInt32(x), y, z FROM pk WHERE (x >= toDateTime(100000)) AND (x <= toDateTime(3));
SELECT toUInt32(x), y, z FROM pk WHERE (x >= toDateTime(100000)) AND (x <= toDateTime(90000));
DROP TABLE IF EXISTS pk;

View File

@ -33,13 +33,12 @@ Expression (Projection)
Expression (Before ORDER BY)
SettingQuotaAndLimits (Set limits and quota after reading from storage)
ReadFromMergeTree (default.test_table)
Expression (Projection)
Expression ((Projection + Before ORDER BY [lifted up part]))
Limit (preliminary LIMIT (without OFFSET))
Expression (Before ORDER BY [lifted up part])
Sorting
Expression (Before ORDER BY)
SettingQuotaAndLimits (Set limits and quota after reading from storage)
ReadFromMergeTree (default.test_table)
Sorting
Expression (Before ORDER BY)
SettingQuotaAndLimits (Set limits and quota after reading from storage)
ReadFromMergeTree (default.test_table)
optimize_aggregation_in_order
Expression ((Projection + Before ORDER BY))
Aggregating

View File

@ -144,7 +144,7 @@ Filter
2 3
> function calculation should be done after sorting and limit (if possible)
> Expression should be divided into two subexpressions and only one of them should be moved after Sorting
Expression (Before ORDER BY [lifted up part])
Expression ((Projection + Before ORDER BY [lifted up part]))
FUNCTION sipHash64
Sorting
Expression (Before ORDER BY)

View File

@ -201,7 +201,7 @@ echo "> function calculation should be done after sorting and limit (if possible
echo "> Expression should be divided into two subexpressions and only one of them should be moved after Sorting"
$CLICKHOUSE_CLIENT -q "
explain actions = 1 select number as n, sipHash64(n) from numbers(100) order by number + 1 limit 5" |
sed 's/^ *//g' | grep -o "^ *\(Expression (Before ORDER BY.*)\|Sorting\|FUNCTION \w\+\)"
sed 's/^ *//g' | grep -o "^ *\(Expression (.*Before ORDER BY.*)\|Sorting\|FUNCTION \w\+\)"
echo "> this query should be executed without throwing an exception"
$CLICKHOUSE_CLIENT -q "
select throwIf(number = 5) from (select * from numbers(10)) order by number limit 1"

View File

@ -0,0 +1,3 @@
{"data":{"k1":0,"k2":2}}
{"data":{"k1":1,"k2":0}}
Tuple(k1 Int8, k2 Int8)

View File

@ -0,0 +1,25 @@
-- Tags: no-fasttest
SET allow_experimental_object_type = 1;
SET output_format_json_named_tuples_as_objects = 1;
DROP TABLE IF EXISTS t_json_wide_parts;
CREATE TABLE t_json_wide_parts (data JSON)
ENGINE MergeTree ORDER BY tuple()
SETTINGS min_bytes_for_wide_part = 0;
SYSTEM STOP MERGES t_json_wide_parts;
INSERT INTO t_json_wide_parts VALUES ('{"k1": 1}');
INSERT INTO t_json_wide_parts VALUES ('{"k2": 2}');
SYSTEM START MERGES t_json_wide_parts;
OPTIMIZE TABLE t_json_wide_parts FINAL;
SELECT data FROM t_json_wide_parts ORDER BY data.k1 FORMAT JSONEachRow;
SELECT type FROM system.parts_columns
WHERE table = 't_json_wide_parts' AND database = currentDatabase() AND active;
DROP TABLE t_json_wide_parts;

View File

@ -1 +1,2 @@
Ok
SleepFunctionCalls: 4 (increment)
SleepFunctionMicroseconds: 400000 (increment)

View File

@ -7,22 +7,16 @@ CUR_DIR=$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)
${CLICKHOUSE_CLIENT} --multiquery --query "
drop table if exists aliases_lazyness;
create table aliases_lazyness (x UInt32, y ALIAS sleepEachRow(0.1)) Engine=MergeTree ORDER BY x;
insert into aliases_lazyness(x) select * from numbers(40);
insert into aliases_lazyness(x) select * from numbers(100);
"
# In very old ClickHouse versions alias column was calculated for every row.
# If it works this way, the query will take at least 0.1 * 40 = 4 seconds.
# If the issue does not exist, the query should take slightly more than 0.1 seconds.
# The exact time is not guaranteed, so we check in a loop that at least once
# the query will process in less than one second, that proves that the behaviour is not like it was long time ago.
# If it works this way, the query will take at least 0.1 * 100 = 10 seconds.
# If the issue does not exist, the query should call sleepEachRow() "only" 4 times:
# - from MergeTreeData::getQueryProcessingStageWithAggregateProjection() -> MergeTreeWhereOptimizer -> getBlockWithConstants()
# - from MergeTreeWhereOptimizer -> getBlockWithConstants()
# - ReadFromMergeTree::selectRangesToRead() -> getBlockWithConstants()
# - Pipeline
${CLICKHOUSE_CLIENT} --profile-events-delay-ms=-1 --print-profile-events --query "SELECT x, y FROM aliases_lazyness WHERE x = 1 FORMAT Null" |& grep -o -e "SleepFunctionMicroseconds.*" -e "SleepFunctionCalls.*"
i=0 retries=300
while [[ $i -lt $retries ]]; do
timeout 1 ${CLICKHOUSE_CLIENT} --query "SELECT x, y FROM aliases_lazyness WHERE x = 1 FORMAT Null" && break
((++i))
done
${CLICKHOUSE_CLIENT} --multiquery --query "
drop table aliases_lazyness;
SELECT 'Ok';
"
${CLICKHOUSE_CLIENT} --query "drop table aliases_lazyness"

File diff suppressed because one or more lines are too long

View File

@ -16,69 +16,69 @@ tables_with_database_column=(
*/
use system;
show create table aggregate_function_combinators;
show create table asynchronous_inserts;
show create table asynchronous_metrics;
show create table build_options;
show create table clusters;
show create table collations;
show create table columns;
show create table contributors;
show create table current_roles;
show create table data_skipping_indices;
show create table data_type_families;
show create table databases;
show create table detached_parts;
show create table dictionaries;
show create table disks;
show create table distributed_ddl_queue;
show create table distribution_queue;
show create table enabled_roles;
show create table errors;
show create table events;
show create table formats;
show create table functions;
show create table grants;
show create table graphite_retentions;
show create table licenses;
show create table macros;
show create table merge_tree_settings;
show create table merges;
show create table metrics;
show create table models;
show create table mutations;
show create table numbers;
show create table numbers_mt;
show create table one;
show create table part_moves_between_shards;
show create table parts;
show create table parts_columns;
show create table privileges;
show create table processes;
show create table projection_parts;
show create table projection_parts_columns;
show create table quota_limits;
show create table quota_usage;
show create table quotas;
show create table quotas_usage;
show create table replicas;
show create table replicated_fetches;
show create table replicated_merge_tree_settings;
show create table replication_queue;
show create table role_grants;
show create table roles;
show create table row_policies;
show create table settings;
show create table settings_profile_elements;
show create table settings_profiles;
show create table stack_trace;
show create table storage_policies;
show create table table_engines;
show create table table_functions;
show create table tables;
show create table time_zones;
show create table user_directories;
show create table users;
show create table warnings;
show create table zeros;
show create table zeros_mt;
show create table aggregate_function_combinators format TSVRaw;
show create table asynchronous_inserts format TSVRaw;
show create table asynchronous_metrics format TSVRaw;
show create table build_options format TSVRaw;
show create table clusters format TSVRaw;
show create table collations format TSVRaw;
show create table columns format TSVRaw;
show create table contributors format TSVRaw;
show create table current_roles format TSVRaw;
show create table data_skipping_indices format TSVRaw;
show create table data_type_families format TSVRaw;
show create table databases format TSVRaw;
show create table detached_parts format TSVRaw;
show create table dictionaries format TSVRaw;
show create table disks format TSVRaw;
show create table distributed_ddl_queue format TSVRaw;
show create table distribution_queue format TSVRaw;
show create table enabled_roles format TSVRaw;
show create table errors format TSVRaw;
show create table events format TSVRaw;
show create table formats format TSVRaw;
show create table functions format TSVRaw;
show create table grants format TSVRaw;
show create table graphite_retentions format TSVRaw;
show create table licenses format TSVRaw;
show create table macros format TSVRaw;
show create table merge_tree_settings format TSVRaw;
show create table merges format TSVRaw;
show create table metrics format TSVRaw;
show create table models format TSVRaw;
show create table mutations format TSVRaw;
show create table numbers format TSVRaw;
show create table numbers_mt format TSVRaw;
show create table one format TSVRaw;
show create table part_moves_between_shards format TSVRaw;
show create table parts format TSVRaw;
show create table parts_columns format TSVRaw;
show create table privileges format TSVRaw;
show create table processes format TSVRaw;
show create table projection_parts format TSVRaw;
show create table projection_parts_columns format TSVRaw;
show create table quota_limits format TSVRaw;
show create table quota_usage format TSVRaw;
show create table quotas format TSVRaw;
show create table quotas_usage format TSVRaw;
show create table replicas format TSVRaw;
show create table replicated_fetches format TSVRaw;
show create table replicated_merge_tree_settings format TSVRaw;
show create table replication_queue format TSVRaw;
show create table role_grants format TSVRaw;
show create table roles format TSVRaw;
show create table row_policies format TSVRaw;
show create table settings format TSVRaw;
show create table settings_profile_elements format TSVRaw;
show create table settings_profiles format TSVRaw;
show create table stack_trace format TSVRaw;
show create table storage_policies format TSVRaw;
show create table table_engines format TSVRaw;
show create table table_functions format TSVRaw;
show create table tables format TSVRaw;
show create table time_zones format TSVRaw;
show create table user_directories format TSVRaw;
show create table users format TSVRaw;
show create table warnings format TSVRaw;
show create table zeros format TSVRaw;
show create table zeros_mt format TSVRaw;

View File

@ -7,15 +7,13 @@
ExpressionTransform
(Limit)
Limit
(Expression)
ExpressionTransform
(Sorting)
MergingSortedTransform 2 → 1
(Expression)
ExpressionTransform × 2
(SettingQuotaAndLimits)
(ReadFromMergeTree)
MergeTreeInOrder × 2 0 → 1
(Sorting)
MergingSortedTransform 2 → 1
(Expression)
ExpressionTransform × 2
(SettingQuotaAndLimits)
(ReadFromMergeTree)
MergeTreeInOrder × 2 0 → 1
2020-10-01 9
2020-10-01 9
2020-10-01 9
@ -25,18 +23,16 @@ ExpressionTransform
ExpressionTransform
(Limit)
Limit
(Expression)
ExpressionTransform
(Sorting)
MergingSortedTransform 2 → 1
(Expression)
ExpressionTransform × 2
(SettingQuotaAndLimits)
(ReadFromMergeTree)
ReverseTransform
MergeTreeReverse 0 → 1
ReverseTransform
MergeTreeReverse 0 → 1
(Sorting)
MergingSortedTransform 2 → 1
(Expression)
ExpressionTransform × 2
(SettingQuotaAndLimits)
(ReadFromMergeTree)
ReverseTransform
MergeTreeReverse 0 → 1
ReverseTransform
MergeTreeReverse 0 → 1
2020-10-01 9
2020-10-01 9
2020-10-01 9
@ -46,17 +42,15 @@ ExpressionTransform
ExpressionTransform
(Limit)
Limit
(Expression)
ExpressionTransform
(Sorting)
FinishSortingTransform
PartialSortingTransform
MergingSortedTransform 2 → 1
(Expression)
ExpressionTransform × 2
(SettingQuotaAndLimits)
(ReadFromMergeTree)
MergeTreeInOrder × 2 0 → 1
(Sorting)
FinishSortingTransform
PartialSortingTransform
MergingSortedTransform 2 → 1
(Expression)
ExpressionTransform × 2
(SettingQuotaAndLimits)
(ReadFromMergeTree)
MergeTreeInOrder × 2 0 → 1
2020-10-11 0
2020-10-11 0
2020-10-11 0

View File

@ -1,3 +1,5 @@
-- Tags: no-random-settings
create table if not exists t_group_by_lowcardinality(p_date Date, val LowCardinality(Nullable(String)))
engine=MergeTree() partition by p_date order by tuple();

View File

@ -25,3 +25,5 @@ CREATE TABLE default.mem\n(\n `n` UInt8\n)\nENGINE = Memory
CREATE TABLE default.val\n(\n `n` Int32\n) AS values(\'n int\', 1, 2)
CREATE TABLE default.val2\n(\n `n` Int32\n) AS values(\'n int\', 1, 2)
CREATE TABLE default.log\n(\n `n` Int32\n)\nENGINE = Log
CREATE TABLE default.kek\n(\n `n` Int32\n)\nENGINE = Memory
CREATE TABLE default.lol\n(\n `n` Int32\n)\nENGINE = MergeTree\nORDER BY n\nSETTINGS min_bytes_for_wide_part = 123, index_granularity = 8192

View File

@ -66,7 +66,7 @@ DROP TABLE t2;
CREATE DATABASE test_02184 ORDER BY kek; -- {serverError 80}
CREATE DATABASE test_02184 SETTINGS x=1; -- {serverError 80}
CREATE DATABASE test_02184 SETTINGS x=1; -- {serverError 115}
CREATE TABLE table_02184 (x UInt8, y int, PRIMARY KEY (x)) ENGINE=MergeTree PRIMARY KEY y; -- {clientError 36}
SET default_table_engine = 'MergeTree';
CREATE TABLE table_02184 (x UInt8, y int, PRIMARY KEY (x)) PRIMARY KEY y; -- {clientError 36}
@ -118,3 +118,13 @@ SHOW CREATE TABLE log;
DROP TABLE val;
DROP TABLE val2;
DROP TABLE log;
DROP TABLE IF EXISTS kek;
DROP TABLE IF EXISTS lol;
SET default_table_engine = 'Memory';
CREATE TABLE kek (n int) SETTINGS log_queries=1;
CREATE TABLE lol (n int) ENGINE=MergeTree ORDER BY n SETTINGS min_bytes_for_wide_part=123 SETTINGS log_queries=1;
SHOW CREATE TABLE kek;
SHOW CREATE TABLE lol;
DROP TABLE kek;
DROP TABLE lol;

View File

@ -0,0 +1,6 @@
select toStartOfInterval(toDateTime64('\0930-12-12 12:12:12.1234567', 3), toIntervalNanosecond(1024)); -- {serverError 407}
SELECT
toDateTime64(-9223372036854775808, 1048575, toIntervalNanosecond(9223372036854775806), NULL),
toStartOfInterval(toDateTime64(toIntervalNanosecond(toIntervalNanosecond(257), toDateTime64(toStartOfInterval(toDateTime64(NULL)))), '', 100), toIntervalNanosecond(toStartOfInterval(toDateTime64(toIntervalNanosecond(NULL), NULL)), -1)),
toStartOfInterval(toDateTime64('\0930-12-12 12:12:12.1234567', 3), toIntervalNanosecond(1024)); -- {serverError 407}

View File

@ -0,0 +1,30 @@
174876E800
174876E800
64
9C
64
FF9C
64
FFFFFF9C
64
FFFFFFFFFFFFFF9C
174876E800
174876E800
174876E800
FFFFFFFFFFFFFFFFFFFFFFE8B7891800
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFE8B7891800
0001011101001000011101101110100000000000
0001011101001000011101101110100000000000
01100100
10011100
01100100
1111111110011100
01100100
11111111111111111111111110011100
01100100
1111111111111111111111111111111111111111111111111111111110011100
0001011101001000011101101110100000000000
0001011101001000011101101110100000000000
0001011101001000011101101110100000000000
11111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110100010110111100010010001100000000000
1111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110100010110111100010010001100000000000

View File

@ -28,3 +28,33 @@ SELECT hex(toInt128(-100000000000)) AS res;
SELECT hex(toInt256(-100000000000)) AS res;
SELECT bin(toUInt128(100000000000)) AS res;
SELECT bin(toUInt256(100000000000)) AS res;
SELECT bin(toInt8(100)) AS res;
SELECT bin(toInt8(-100)) AS res;
SELECT bin(toInt16(100)) AS res;
SELECT bin(toInt16(-100)) AS res;
SELECT bin(toInt32(100)) AS res;
SELECT bin(toInt32(-100)) AS res;
SELECT bin(toInt64(100)) AS res;
SELECT bin(toInt64(-100)) AS res;
SELECT bin(toInt128(100000000000)) AS res;
SELECT bin(toInt128(100000000000)) AS res;
SELECT bin(toInt256(100000000000)) AS res;
SELECT bin(toInt128(-100000000000)) AS res;
SELECT bin(toInt256(-100000000000)) AS res;

View File

@ -1,15 +0,0 @@
174876E800
174876E800
64
9C
64
FF9C
64
FFFFFF9C
64
FFFFFFFFFFFFFF9C
174876E800
174876E800
174876E800
FFFFFFFFFFFFFFFFFFFFFFE8B7891800
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFE8B7891800

View File

@ -0,0 +1,30 @@
-- { echo }
SET enable_filesystem_cache_on_write_operations=0;
DROP TABLE IF EXISTS test;
CREATE TABLE test (key UInt32, value String) Engine=MergeTree() ORDER BY key SETTINGS storage_policy='s3_cache', min_bytes_for_wide_part = 10485760;
SYSTEM DROP FILESYSTEM CACHE;
SELECT count() FROM system.filesystem_cache;
0
INSERT INTO test SELECT number, toString(number) FROM numbers(100);
SELECT * FROM test FORMAT Null;
SELECT count() FROM system.filesystem_cache;
2
SYSTEM DROP FILESYSTEM CACHE FORCE;
SELECT count() FROM system.filesystem_cache;
0
SELECT * FROM test FORMAT Null;
SELECT count() FROM system.filesystem_cache;
1
SYSTEM DROP FILESYSTEM CACHE './data'; -- { serverError 36 }
SELECT count() FROM system.filesystem_cache;
1
DROP TABLE IF EXISTS test2;
CREATE TABLE test2 (key UInt32, value String) Engine=MergeTree() ORDER BY key SETTINGS storage_policy='s3_cache_2', min_bytes_for_wide_part = 10485760;
INSERT INTO test2 SELECT number, toString(number) FROM numbers(100);
SELECT * FROM test2 FORMAT Null;
SELECT count() FROM system.filesystem_cache;
3
SYSTEM DROP FILESYSTEM CACHE './s3_cache/';
SELECT count() FROM system.filesystem_cache;
2

View File

@ -0,0 +1,34 @@
-- Tags: no-parallel, no-fasttest, no-s3-storage
-- { echo }
SET enable_filesystem_cache_on_write_operations=0;
DROP TABLE IF EXISTS test;
CREATE TABLE test (key UInt32, value String) Engine=MergeTree() ORDER BY key SETTINGS storage_policy='s3_cache', min_bytes_for_wide_part = 10485760;
SYSTEM DROP FILESYSTEM CACHE;
SELECT count() FROM system.filesystem_cache;
INSERT INTO test SELECT number, toString(number) FROM numbers(100);
SELECT * FROM test FORMAT Null;
SELECT count() FROM system.filesystem_cache;
SYSTEM DROP FILESYSTEM CACHE FORCE;
SELECT count() FROM system.filesystem_cache;
SELECT * FROM test FORMAT Null;
SELECT count() FROM system.filesystem_cache;
SYSTEM DROP FILESYSTEM CACHE './data'; -- { serverError 36 }
SELECT count() FROM system.filesystem_cache;
DROP TABLE IF EXISTS test2;
CREATE TABLE test2 (key UInt32, value String) Engine=MergeTree() ORDER BY key SETTINGS storage_policy='s3_cache_2', min_bytes_for_wide_part = 10485760;
INSERT INTO test2 SELECT number, toString(number) FROM numbers(100);
SELECT * FROM test2 FORMAT Null;
SELECT count() FROM system.filesystem_cache;
SYSTEM DROP FILESYSTEM CACHE './s3_cache/';
SELECT count() FROM system.filesystem_cache;

View File

@ -0,0 +1,10 @@
CREATE TABLE default.t_tuple_numeric\n(\n `t` Tuple(`1` Tuple(`2` Int32, `3` Int32), `4` Int32)\n)\nENGINE = Memory
{"t":{"1":{"2":2,"3":3},"4":4}}
2 3 4
2 3 4
2 3 4
2 3 4
Tuple(`1` Tuple(`2` Int8, `3` Int8), `4` Int8)
{"t":{"1":{"2":2,"3":3},"4":4}}
2 3 4
(('value'))

View File

@ -0,0 +1,45 @@
-- Tags: no-fasttest
DROP TABLE IF EXISTS t_tuple_numeric;
CREATE TABLE t_tuple_numeric (t Tuple(`1` Tuple(`2` Int, `3` Int), `4` Int)) ENGINE = Memory;
SHOW CREATE TABLE t_tuple_numeric;
INSERT INTO t_tuple_numeric VALUES (((2, 3), 4));
SET output_format_json_named_tuples_as_objects = 1;
SELECT * FROM t_tuple_numeric FORMAT JSONEachRow;
SELECT `t`.`1`.`2`, `t`.`1`.`3`, `t`.`4` FROM t_tuple_numeric;
SELECT t.1.1, t.1.2, t.2 FROM t_tuple_numeric;
SELECT t.1.3 FROM t_tuple_numeric; -- {serverError ILLEGAL_INDEX}
SELECT t.4 FROM t_tuple_numeric; -- {serverError ILLEGAL_INDEX}
SELECT `t`.`1`.`1`, `t`.`1`.`2`, `t`.`2` FROM t_tuple_numeric; -- {serverError UNKNOWN_IDENTIFIER}
DROP TABLE t_tuple_numeric;
CREATE TABLE t_tuple_numeric (t Tuple(Tuple(Int, Int), Int)) ENGINE = Memory;
INSERT INTO t_tuple_numeric VALUES (((2, 3), 4));
SELECT t.1.1, t.1.2, t.2 FROM t_tuple_numeric;
SELECT `t`.`1`.`1`, `t`.`1`.`2`, `t`.`2` FROM t_tuple_numeric;
DROP TABLE t_tuple_numeric;
SET allow_experimental_object_type = 1;
CREATE TABLE t_tuple_numeric (t JSON) ENGINE = Memory;
INSERT INTO t_tuple_numeric FORMAT JSONEachRow {"t":{"1":{"2":2,"3":3},"4":4}}
SELECT toTypeName(t) FROM t_tuple_numeric LIMIT 1;
SELECT * FROM t_tuple_numeric FORMAT JSONEachRow;
SELECT `t`.`1`.`2`, `t`.`1`.`3`, `t`.`4` FROM t_tuple_numeric;
DROP TABLE t_tuple_numeric;
WITH
'{"1":{"key":"value"}}' AS data,
JSONExtract(data, 'Tuple("1" Tuple(key String))') AS parsed_json
SELECT parsed_json AS ssid

View File

@ -1,4 +1,4 @@
-- Tags: no-parallel
-- Tags: no-parallel, no-random-settings
-- { echo }

View File

@ -4,3 +4,4 @@ requests
sqlparse
tenacity
xmltodict
pandas

View File

@ -1,4 +1,6 @@
v22.4.3.3-stable 2022-04-26
v22.4.2.1-stable 2022-04-22
v22.3.4.20-lts 2022-04-26
v22.3.3.44-lts 2022-04-06
v22.3.2.2-lts 2022-03-17
v22.2.3.5-stable 2022-02-25

1 v22.4.2.1-stable v22.4.3.3-stable 2022-04-22 2022-04-26
1 v22.4.3.3-stable 2022-04-26
2 v22.4.2.1-stable v22.4.2.1-stable 2022-04-22 2022-04-22
3 v22.3.4.20-lts 2022-04-26
4 v22.3.3.44-lts v22.3.3.44-lts 2022-04-06 2022-04-06
5 v22.3.2.2-lts v22.3.2.2-lts 2022-03-17 2022-03-17
6 v22.2.3.5-stable v22.2.3.5-stable 2022-02-25 2022-02-25

View File

@ -0,0 +1,52 @@
{% extends 'templates/base.html' %}
{% set title = 'Performance comparison of different ClickHouse versions' %}
{% set extra_js = [
'queries.js?' + rev_short,
'results.js?' + rev_short,
'../benchmark.js?' + rev_short]
%}
{% set url = 'https://clickhouse.com/benchmark/versions/' %}
{% set no_footer = True %}
{% block content %}
<div class="container-fluid py-3">
<div class="row mb-3">
<div class="col d-flex align-items-center">
<a href="/" title="Main page" class="float-left mr-3">
<img src="/docs/images/logo.svg" alt="ClickHouse" />
</a>
<h1 class="h2 mb-0">{{ title }}</h1>
</div>
</div>
<div class="row mb-3">
<div id="selectors" class="col"></div>
</div>
<div class="row mb-3">
<div class="col">
<h2 class="h4 my-3">Relative query processing time <span class="text-muted">(lower is better)</span></h2>
<div id="diagram"></div>
</div>
</div>
<div class="row mb-3">
<div class="col">
<h2 class="h4 my-3">Full results</h2>
<div id="comparison_table" class="overflow-auto"></div>
</div>
</div>
<div class="row">
<div class="col">
<h2 class="h4 my-3">Comments</h2>
<p>Hardware used to run tests: x86_64 AWS m5.8xlarge Ubuntu 20.04.</p>
<p>Old versions had no support of this features/syntax: toISOWeek, SUBSTRING, EXTRACT, WITH. Queries were changed. All versions runs use same queries. </p>
<p>Star Schema Benchmark Patrick O'Neil, Elizabeth (Betty) O'Neil and Xuedong Chen. "The Star Schema Benchmark," Online Publication of Database Generation program., January 2007. <a href="http://www.cs.umb.edu/~poneil/StarSchemaB.pdf">http://www.cs.umb.edu/~poneil/StarSchemaB.pdf</a></p>
<br/>
</p>
</div>
</div>
{% endblock %}

View File

@ -0,0 +1,291 @@
var current_data_size = 0;
var current_systems = [];
var queries =
[
{
"query": "SELECT machine_name, MIN(cpu) AS cpu_min, MAX(cpu) AS cpu_max, AVG(cpu) AS cpu_avg, MIN(net_in) AS net_in_min, MAX(net_in) AS net_in_max, AVG(net_in) AS net_in_avg, MIN(net_out) AS net_out_min, MAX(net_out) AS net_out_max, AVG(net_out) AS net_out_avg FROM ( SELECT machine_name, ifNull(cpu_user, 0.0) AS cpu, ifNull(bytes_in, 0.0) AS net_in, ifNull(bytes_out, 0.0) AS net_out FROM mgbench.logs1 WHERE machine_name IN ('anansi','aragog','urd') AND log_time >= toDateTime('2017-01-11 00:00:00')) AS r GROUP BY machine_name;",
"comment": "Q1.1: What is the CPU/network utilization for each web server since midnight?",
},
{
"query": "SELECT machine_name, log_time FROM mgbench.logs1 WHERE (machine_name LIKE 'cslab%' OR machine_name LIKE 'mslab%') AND load_one IS NULL AND log_time >= toDateTime('2017-01-10 00:00:00') ORDER BY machine_name, log_time;",
"comment": "Q1.2: Which computer lab machines have been offline in the past day?",
},
{
"query": "SELECT dt, hr, AVG(load_fifteen) AS load_fifteen_avg, AVG(load_five) AS load_five_avg, AVG(load_one) AS load_one_avg, AVG(mem_free) AS mem_free_avg, AVG(swap_free) AS swap_free_avg FROM ( SELECT CAST(log_time AS DATE) AS dt, toHour(log_time) AS hr, load_fifteen, load_five, load_one, mem_free, swap_free FROM mgbench.logs1 WHERE machine_name = 'babbage' AND load_fifteen IS NOT NULL AND load_five IS NOT NULL AND load_one IS NOT NULL AND mem_free IS NOT NULL AND swap_free IS NOT NULL AND log_time >= toDateTime('2017-01-01 00:00:00')) AS r GROUP BY dt, hr ORDER BY dt, hr;",
"comment": "Q1.3: What are the hourly average metrics during the past 10 days for a specific workstation?",
},
{
"query": "SELECT machine_name, COUNT(*) AS spikes FROM mgbench.logs1 WHERE machine_group = 'Servers' AND cpu_wio > 0.99 AND log_time >= toDateTime('2016-12-01 00:00:00') AND log_time < toDateTime('2017-01-01 00:00:00') GROUP BY machine_name ORDER BY spikes DESC LIMIT 10;",
"comment": "Q1.4: Over 1 month, how often was each server blocked on disk I/O?",
},
{
"query": "SELECT machine_name, dt, MIN(mem_free) AS mem_free_min FROM ( SELECT machine_name, CAST(log_time AS DATE) AS dt, mem_free FROM mgbench.logs1 WHERE machine_group = 'DMZ' AND mem_free IS NOT NULL ) AS r GROUP BY machine_name, dt HAVING MIN(mem_free) < 10000 ORDER BY machine_name, dt;",
"comment": "Q1.5: Which externally reachable VMs have run low on memory?",
},
{
"query": "SELECT dt, hr, SUM(net_in) AS net_in_sum, SUM(net_out) AS net_out_sum, SUM(net_in) + SUM(net_out) AS both_sum FROM ( SELECT CAST(log_time AS DATE) AS dt, toHour(log_time) AS hr, ifNull(bytes_in, 0.0) / 1000000000.0 AS net_in, ifNull(bytes_out, 0.0) / 1000000000.0 AS net_out FROM mgbench.logs1 WHERE machine_name IN ('allsorts','andes','bigred','blackjack','bonbon','cadbury','chiclets','cotton','crows','dove','fireball','hearts','huey','lindt','milkduds','milkyway','mnm','necco','nerds','orbit','peeps','poprocks','razzles','runts','smarties','smuggler','spree','stride','tootsie','trident','wrigley','york') ) AS r GROUP BY dt, hr ORDER BY both_sum DESC LIMIT 10;",
"comment": "Q1.6: What is the total hourly network traffic across all file servers?",
},
{
"query": "SELECT * FROM mgbench.logs2 WHERE status_code >= 500 AND log_time >= toDateTime('2012-12-18 00:00:00') ORDER BY log_time;",
"comment": "Q2.1: Which requests have caused server errors within the past 2 weeks?",
},
{
"query": "SELECT * FROM mgbench.logs2 WHERE status_code >= 200 AND status_code < 300 AND request LIKE '%/etc/passwd%' AND log_time >= toDateTime('2012-05-06 00:00:00') AND log_time < toDateTime('2012-05-20 00:00:00');",
"comment": "Q2.3: What was the average path depth for top-level requests in the past month?",
},
{
"query": "SELECT top_level, AVG(length(request) - length(replaceOne(request, '/',''))) AS depth_avg FROM ( SELECT substring(request, 1, len) AS top_level, request FROM ( SELECT position('/', substring(request, 2)) AS len, request FROM mgbench.logs2 WHERE status_code >= 200 AND status_code < 300 AND log_time >= toDateTime('2012-12-01 00:00:00')) AS r WHERE len > 0 ) AS s WHERE top_level IN ('/about','/courses','/degrees','/events','/grad','/industry','/news','/people','/publications','/research','/teaching','/ugrad') GROUP BY top_level ORDER BY top_level;",
"comment": "Q2.2: During a specific 2-week period, was the user password file leaked?",
},
{
"query": "SELECT client_ip, COUNT(*) AS num_requests FROM mgbench.logs2 WHERE log_time >= toDateTime('2012-10-01 00:00:00') GROUP BY client_ip HAVING COUNT(*) >= 100000 ORDER BY num_requests DESC;",
"comment": "Q2.4: During the last 3 months, which clients have made an excessive number of requests?",
},
{
"query": "SELECT dt, COUNT(DISTINCT client_ip) FROM ( SELECT CAST(log_time AS DATE) AS dt, client_ip FROM mgbench.logs2) AS r GROUP BY dt ORDER BY dt;",
"comment": "Q2.5: What are the daily unique visitors?",
},
{
"query": "SELECT AVG(transfer) / 125000000.0 AS transfer_avg, MAX(transfer) / 125000000.0 AS transfer_max FROM ( SELECT log_time, SUM(object_size) AS transfer FROM mgbench.logs2 GROUP BY log_time) AS r;",
"comment": "Q2.6: What are the average and maximum data transfer rates (Gbps)?",
},
{
"query": "SELECT * FROM mgbench.logs3 WHERE event_type = 'temperature' AND event_value <= 32.0 AND log_time >= '2019-11-29 17:00:00';",
"comment": "Q3.1: Did the indoor temperature reach freezing over the weekend?",
},
{
"query": "SELECT device_name, device_floor, COUNT(*) AS ct FROM mgbench.logs3 WHERE event_type = 'door_open' AND log_time >= '2019-06-01 00:00:00' GROUP BY device_name, device_floor ORDER BY ct DESC;",
"comment": "Q3.4: Over the past 6 months, how frequently were each door opened?",
},
{
"query": "SELECT yr, mo, SUM(coffee_hourly_avg) AS coffee_monthly_sum, AVG(coffee_hourly_avg) AS coffee_monthly_avg, SUM(printer_hourly_avg) AS printer_monthly_sum, AVG(printer_hourly_avg) AS printer_monthly_avg, SUM(projector_hourly_avg) AS projector_monthly_sum, AVG(projector_hourly_avg) AS projector_monthly_avg, SUM(vending_hourly_avg) AS vending_monthly_sum, AVG(vending_hourly_avg) AS vending_monthly_avg FROM ( SELECT dt, yr, mo, hr, AVG(coffee) AS coffee_hourly_avg, AVG(printer) AS printer_hourly_avg, AVG(projector) AS projector_hourly_avg, AVG(vending) AS vending_hourly_avg FROM ( SELECT CAST(log_time AS DATE) AS dt, toYear(log_time) AS yr, EXTRACT(MONTH FROM log_time) AS mo, toHour(log_time) AS hr, CASE WHEN device_name LIKE 'coffee%' THEN event_value END AS coffee, CASE WHEN device_name LIKE 'printer%' THEN event_value END AS printer, CASE WHEN device_name LIKE 'projector%' THEN event_value END AS projector, CASE WHEN device_name LIKE 'vending%' THEN event_value END AS vending FROM mgbench.logs3 WHERE device_type = 'meter' ) AS r GROUP BY dt, yr, mo, hr ) AS s GROUP BY yr, mo ORDER BY yr, mo;",
"comment": " -- Q3.6: For each device category, what are the monthly power consumption metrics?",
},
{
"query": "SELECT sum(LO_EXTENDEDPRICE * LO_DISCOUNT) AS revenue FROM lineorder_flat WHERE F_YEAR = 1993 AND LO_DISCOUNT BETWEEN 1 AND 3 AND LO_QUANTITY < 25;",
"comment": " -- Q1.1",
},
{
"query": "SELECT sum(LO_EXTENDEDPRICE * LO_DISCOUNT) AS revenue FROM lineorder_flat WHERE toYYYYMM(LO_ORDERDATE) = 199401 AND LO_DISCOUNT BETWEEN 4 AND 6 AND LO_QUANTITY BETWEEN 26 AND 35;",
"comment": " -- Q1.2",
},
{
"query": "SELECT sum(LO_EXTENDEDPRICE * LO_DISCOUNT) AS revenue FROM lineorder_flat WHERE toRelativeWeekNum(LO_ORDERDATE) - toRelativeWeekNum(toDate('1994-01-01')) = 6 AND F_YEAR = 1994 AND LO_DISCOUNT BETWEEN 5 AND 7 AND LO_QUANTITY BETWEEN 26 AND 35;",
"comment": " -- Q1.3",
},
{
"query": "SELECT sum(LO_REVENUE), F_YEAR AS year, P_BRAND FROM lineorder_flat WHERE P_CATEGORY = 'MFGR#12' AND S_REGION = 'AMERICA' GROUP BY year, P_BRAND ORDER BY year, P_BRAND;",
"comment": " -- Q2.1",
},
{
"query": "SELECT sum(LO_REVENUE), F_YEAR AS year, P_BRAND FROM lineorder_flat WHERE P_BRAND >= 'MFGR#2221' AND P_BRAND <= 'MFGR#2228' AND S_REGION = 'ASIA' GROUP BY year, P_BRAND ORDER BY year, P_BRAND;",
"comment": " -- Q2.2",
},
{
"query": "SELECT sum(LO_REVENUE), F_YEAR AS year, P_BRAND FROM lineorder_flat WHERE P_BRAND = 'MFGR#2239' AND S_REGION = 'EUROPE' GROUP BY year, P_BRAND ORDER BY year, P_BRAND;",
"comment": " -- Q2.3",
},
{
"query": "SELECT C_NATION, S_NATION, F_YEAR AS year, sum(LO_REVENUE) AS revenue FROM lineorder_flat WHERE C_REGION = 'ASIA' AND S_REGION = 'ASIA' AND year >= 1992 AND year <= 1997 GROUP BY C_NATION, S_NATION, year ORDER BY year ASC, revenue DESC;",
"comment": " -- Q3.1",
},
{
"query": "SELECT C_CITY, S_CITY, F_YEAR AS year, sum(LO_REVENUE) AS revenue FROM lineorder_flat WHERE C_NATION = 'UNITED STATES' AND S_NATION = 'UNITED STATES' AND year >= 1992 AND year <= 1997 GROUP BY C_CITY, S_CITY, year ORDER BY year ASC, revenue DESC;",
"comment": " -- Q3.2",
},
{
"query": "SELECT C_CITY, S_CITY, F_YEAR AS year, sum(LO_REVENUE) AS revenue FROM lineorder_flat WHERE (C_CITY = 'UNITED KI1' OR C_CITY = 'UNITED KI5') AND (S_CITY = 'UNITED KI1' OR S_CITY = 'UNITED KI5') AND year >= 1992 AND year <= 1997 GROUP BY C_CITY, S_CITY, year ORDER BY year ASC, revenue DESC;",
"comment": " -- Q3.3",
},
{
"query": "SELECT C_CITY, S_CITY, F_YEAR AS year, sum(LO_REVENUE) AS revenue FROM lineorder_flat WHERE (C_CITY = 'UNITED KI1' OR C_CITY = 'UNITED KI5') AND (S_CITY = 'UNITED KI1' OR S_CITY = 'UNITED KI5') AND toYYYYMM(LO_ORDERDATE) = 199712 GROUP BY C_CITY, S_CITY, year ORDER BY year ASC, revenue DESC;",
"comment": " -- Q3.4",
},
{
"query": "SELECT F_YEAR AS year, C_NATION, sum(LO_REVENUE - LO_SUPPLYCOST) AS profit FROM lineorder_flat WHERE C_REGION = 'AMERICA' AND S_REGION = 'AMERICA' AND (P_MFGR = 'MFGR#1' OR P_MFGR = 'MFGR#2') GROUP BY year, C_NATION ORDER BY year ASC, C_NATION ASC;",
"comment": " -- Q4.1",
},
{
"query": "SELECT F_YEAR AS year, S_NATION, P_CATEGORY, sum(LO_REVENUE - LO_SUPPLYCOST) AS profit FROM lineorder_flat WHERE C_REGION = 'AMERICA' AND S_REGION = 'AMERICA' AND (year = 1997 OR year = 1998) AND (P_MFGR = 'MFGR#1' OR P_MFGR = 'MFGR#2') GROUP BY year, S_NATION, P_CATEGORY ORDER BY year ASC, S_NATION ASC, P_CATEGORY ASC;",
"comment": " -- Q4.2",
},
{
"query": "SELECT F_YEAR AS year, S_CITY, P_BRAND, sum(LO_REVENUE - LO_SUPPLYCOST) AS profit FROM lineorder_flat WHERE S_NATION = 'UNITED STATES' AND (year = 1997 OR year = 1998) AND P_CATEGORY = 'MFGR#14' GROUP BY year, S_CITY, P_BRAND ORDER BY year ASC, S_CITY ASC, P_BRAND ASC;",
"comment": " -- Q4.",
},
{
"query": "SELECT count() FROM hits",
"comment": "",
},
{
"query": "SELECT count() FROM hits WHERE AdvEngineID != 0",
"comment": "",
},
{
"query": "SELECT sum(AdvEngineID), count(), avg(ResolutionWidth) FROM hits",
"comment": "",
},
{
"query": "SELECT sum(UserID) FROM hits",
"comment": "",
},
{
"query": "SELECT uniq(UserID) FROM hits",
"comment": "",
},
{
"query": "SELECT uniq(SearchPhrase) FROM hits",
"comment": "",
},
{
"query": "SELECT min(EventDate), max(EventDate) FROM hits",
"comment": "",
},
{
"query": "SELECT AdvEngineID, count() FROM hits WHERE AdvEngineID != 0 GROUP BY AdvEngineID ORDER BY count() DESC",
"comment": "",
},
{
"query": "SELECT RegionID, uniq(UserID) AS u FROM hits GROUP BY RegionID ORDER BY u DESC LIMIT 10",
"comment": "",
},
{
"query": "SELECT RegionID, sum(AdvEngineID), count() AS c, avg(ResolutionWidth), uniq(UserID) FROM hits GROUP BY RegionID ORDER BY c DESC LIMIT 10",
"comment": "",
},
{
"query": "SELECT MobilePhoneModel, uniq(UserID) AS u FROM hits WHERE MobilePhoneModel != '' GROUP BY MobilePhoneModel ORDER BY u DESC LIMIT 10",
"comment": "",
},
{
"query": "SELECT MobilePhone, MobilePhoneModel, uniq(UserID) AS u FROM hits WHERE MobilePhoneModel != '' GROUP BY MobilePhone, MobilePhoneModel ORDER BY u DESC LIMIT 10",
"comment": "",
},
{
"query": "SELECT SearchPhrase, count() AS c FROM hits WHERE SearchPhrase != '' GROUP BY SearchPhrase ORDER BY c DESC LIMIT 10",
"comment": "",
},
{
"query": "SELECT SearchPhrase, uniq(UserID) AS u FROM hits WHERE SearchPhrase != '' GROUP BY SearchPhrase ORDER BY u DESC LIMIT 10",
"comment": "",
},
{
"query": "SELECT SearchEngineID, SearchPhrase, count() AS c FROM hits WHERE SearchPhrase != '' GROUP BY SearchEngineID, SearchPhrase ORDER BY c DESC LIMIT 10",
"comment": "",
},
{
"query": "SELECT UserID, count() FROM hits GROUP BY UserID ORDER BY count() DESC LIMIT 10",
"comment": "",
},
{
"query": "SELECT UserID, SearchPhrase, count() FROM hits GROUP BY UserID, SearchPhrase ORDER BY count() DESC LIMIT 10",
"comment": "",
},
{
"query": "SELECT UserID, SearchPhrase, count() FROM hits GROUP BY UserID, SearchPhrase LIMIT 10",
"comment": "",
},
{
"query": "SELECT UserID, toMinute(EventTime) AS m, SearchPhrase, count() FROM hits GROUP BY UserID, m, SearchPhrase ORDER BY count() DESC LIMIT 10",
"comment": "",
},
{
"query": "SELECT UserID FROM hits WHERE UserID = 12345678901234567890",
"comment": "",
},
{
"query": "SELECT count() FROM hits WHERE URL LIKE '%metrika%'",
"comment": "",
},
{
"query": "SELECT SearchPhrase, any(URL), count() AS c FROM hits WHERE URL LIKE '%metrika%' AND SearchPhrase != '' GROUP BY SearchPhrase ORDER BY c DESC LIMIT 10",
"comment": "",
},
{
"query": "SELECT SearchPhrase, any(URL), any(Title), count() AS c, uniq(UserID) FROM hits WHERE Title LIKE '%Яндекс%' AND URL NOT LIKE '%.yandex.%' AND SearchPhrase != '' GROUP BY SearchPhrase ORDER BY c DESC LIMIT 10",
"comment": "",
},
{
"query": "SELECT * FROM hits WHERE URL LIKE '%metrika%' ORDER BY EventTime LIMIT 10",
"comment": "",
},
{
"query": "SELECT SearchPhrase FROM hits WHERE SearchPhrase != '' ORDER BY EventTime LIMIT 10",
"comment": "",
},
{
"query": "SELECT SearchPhrase FROM hits WHERE SearchPhrase != '' ORDER BY SearchPhrase LIMIT 10",
"comment": "",
},
{
"query": "SELECT SearchPhrase FROM hits WHERE SearchPhrase != '' ORDER BY EventTime, SearchPhrase LIMIT 10",
"comment": "",
},
{
"query": "SELECT CounterID, avg(length(URL)) AS l, count() AS c FROM hits WHERE URL != '' GROUP BY CounterID HAVING c > 100000 ORDER BY l DESC LIMIT 25",
"comment": "",
},
{
"query": "SELECT domainWithoutWWW(Referer) AS key, avg(length(Referer)) AS l, count() AS c, any(Referer) FROM hits WHERE Referer != '' GROUP BY key HAVING c > 100000 ORDER BY l DESC LIMIT 25",
"comment": "",
},
{
"query": "SELECT sum(ResolutionWidth), sum(ResolutionWidth + 1), sum(ResolutionWidth + 2), sum(ResolutionWidth + 3), sum(ResolutionWidth + 4), sum(ResolutionWidth + 5), sum(ResolutionWidth + 6), sum(ResolutionWidth + 7), sum(ResolutionWidth + 8), sum(ResolutionWidth + 9), sum(ResolutionWidth + 10), sum(ResolutionWidth + 11), sum(ResolutionWidth + 12), sum(ResolutionWidth + 13), sum(ResolutionWidth + 14), sum(ResolutionWidth + 15), sum(ResolutionWidth + 16), sum(ResolutionWidth + 17), sum(ResolutionWidth + 18), sum(ResolutionWidth + 19), sum(ResolutionWidth + 20), sum(ResolutionWidth + 21), sum(ResolutionWidth + 22), sum(ResolutionWidth + 23), sum(ResolutionWidth + 24), sum(ResolutionWidth + 25), sum(ResolutionWidth + 26), sum(ResolutionWidth + 27), sum(ResolutionWidth + 28), sum(ResolutionWidth + 29), sum(ResolutionWidth + 30), sum(ResolutionWidth + 31), sum(ResolutionWidth + 32), sum(ResolutionWidth + 33), sum(ResolutionWidth + 34), sum(ResolutionWidth + 35), sum(ResolutionWidth + 36), sum(ResolutionWidth + 37), sum(ResolutionWidth + 38), sum(ResolutionWidth + 39), sum(ResolutionWidth + 40), sum(ResolutionWidth + 41), sum(ResolutionWidth + 42), sum(ResolutionWidth + 43), sum(ResolutionWidth + 44), sum(ResolutionWidth + 45), sum(ResolutionWidth + 46), sum(ResolutionWidth + 47), sum(ResolutionWidth + 48), sum(ResolutionWidth + 49), sum(ResolutionWidth + 50), sum(ResolutionWidth + 51), sum(ResolutionWidth + 52), sum(ResolutionWidth + 53), sum(ResolutionWidth + 54), sum(ResolutionWidth + 55), sum(ResolutionWidth + 56), sum(ResolutionWidth + 57), sum(ResolutionWidth + 58), sum(ResolutionWidth + 59), sum(ResolutionWidth + 60), sum(ResolutionWidth + 61), sum(ResolutionWidth + 62), sum(ResolutionWidth + 63), sum(ResolutionWidth + 64), sum(ResolutionWidth + 65), sum(ResolutionWidth + 66), sum(ResolutionWidth + 67), sum(ResolutionWidth + 68), sum(ResolutionWidth + 69), sum(ResolutionWidth + 70), sum(ResolutionWidth + 71), sum(ResolutionWidth + 72), sum(ResolutionWidth + 73), sum(ResolutionWidth + 74), sum(ResolutionWidth + 75), sum(ResolutionWidth + 76), sum(ResolutionWidth + 77), sum(ResolutionWidth + 78), sum(ResolutionWidth + 79), sum(ResolutionWidth + 80), sum(ResolutionWidth + 81), sum(ResolutionWidth + 82), sum(ResolutionWidth + 83), sum(ResolutionWidth + 84), sum(ResolutionWidth + 85), sum(ResolutionWidth + 86), sum(ResolutionWidth + 87), sum(ResolutionWidth + 88), sum(ResolutionWidth + 89) FROM hits",
"comment": "",
},
{
"query": "SELECT SearchEngineID, ClientIP, count() AS c, sum(Refresh), avg(ResolutionWidth) FROM hits WHERE SearchPhrase != '' GROUP BY SearchEngineID, ClientIP ORDER BY c DESC LIMIT 10",
"comment": "",
},
{
"query": "SELECT WatchID, ClientIP, count() AS c, sum(Refresh), avg(ResolutionWidth) FROM hits WHERE SearchPhrase != '' GROUP BY WatchID, ClientIP ORDER BY c DESC LIMIT 10",
"comment": "",
},
{
"query": "SELECT WatchID, ClientIP, count() AS c, sum(Refresh), avg(ResolutionWidth) FROM hits GROUP BY WatchID, ClientIP ORDER BY c DESC LIMIT 10",
"comment": "",
},
{
"query": "SELECT URL, count() AS c FROM hits GROUP BY URL ORDER BY c DESC LIMIT 10",
"comment": "",
},
{
"query": "SELECT 1, URL, count() AS c FROM hits GROUP BY 1, URL ORDER BY c DESC LIMIT 10",
"comment": "",
},
{
"query": "SELECT ClientIP AS x, x - 1, x - 2, x - 3, count() AS c FROM hits GROUP BY x, x - 1, x - 2, x - 3 ORDER BY c DESC LIMIT 10",
"comment": "",
},
{
"query": "SELECT URL, count() AS PageViews FROM hits WHERE CounterID = 62 AND EventDate >= toDate('2013-07-01') AND EventDate <= toDate('2013-07-31') AND NOT DontCountHits AND NOT Refresh AND notEmpty(URL) GROUP BY URL ORDER BY PageViews DESC LIMIT 10",
"comment": "",
},
{
"query": "SELECT Title, count() AS PageViews FROM hits WHERE CounterID = 62 AND EventDate >= toDate('2013-07-01') AND EventDate <= toDate('2013-07-31') AND NOT DontCountHits AND NOT Refresh AND notEmpty(Title) GROUP BY Title ORDER BY PageViews DESC LIMIT 10",
"comment": "",
},
{
"query": "SELECT URL, count() AS PageViews FROM hits WHERE CounterID = 62 AND EventDate >= toDate('2013-07-01') AND EventDate <= toDate('2013-07-31') AND NOT Refresh AND IsLink AND NOT IsDownload GROUP BY URL ORDER BY PageViews DESC LIMIT 1000",
"comment": "",
},
{
"query": "SELECT TraficSourceID, SearchEngineID, AdvEngineID, ((SearchEngineID = 0 AND AdvEngineID = 0) ? Referer : '') AS Src, URL AS Dst, count() AS PageViews FROM hits WHERE CounterID = 62 AND EventDate >= toDate('2013-07-01') AND EventDate <= toDate('2013-07-31') AND NOT Refresh GROUP BY TraficSourceID, SearchEngineID, AdvEngineID, Src, Dst ORDER BY PageViews DESC LIMIT 1000",
"comment": "",
},
{
"query": "SELECT URLHash, EventDate, count() AS PageViews FROM hits WHERE CounterID = 62 AND EventDate >= toDate('2013-07-01') AND EventDate <= toDate('2013-07-31') AND NOT Refresh AND TraficSourceID IN (-1, 6) AND RefererHash = halfMD5('http://yandex.ru/') GROUP BY URLHash, EventDate ORDER BY PageViews DESC LIMIT 100",
"comment": "",
},
{
"query": "SELECT WindowClientWidth, WindowClientHeight, count() AS PageViews FROM hits WHERE CounterID = 62 AND EventDate >= toDate('2013-07-01') AND EventDate <= toDate('2013-07-31') AND NOT Refresh AND NOT DontCountHits AND URLHash = halfMD5('http://yandex.ru/') GROUP BY WindowClientWidth, WindowClientHeight ORDER BY PageViews DESC LIMIT 10000;",
"comment": "",
},
{
"query": "SELECT toStartOfMinute(EventTime) AS Minute, count() AS PageViews FROM hits WHERE CounterID = 62 AND EventDate >= toDate('2013-07-01') AND EventDate <= toDate('2013-07-02') AND NOT Refresh AND NOT DontCountHits GROUP BY Minute ORDER BY Minute;",
"comment": "",
}
];

View File

@ -0,0 +1,85 @@
[
{
"system": "2018-04-16 1.1.54378",
"system_full": "ClickHouse 1.1.54378 2018-04-16",
"version": "1.1.54378",
"kind": "",
"comments": "",
"result":
[
[0.099, 0.017, 0.014],
[0.176, 0.005, 0.005],
[0.818, 0.018, 0.016],
[0.163, 0.011, 0.011],
[0.264, 0.039, 0.031],
[1.025, 0.026, 0.024],
[0.076, 0.004, 0.003],
[0.335, 0.018, 0.018],
[0.511, 0.034, 0.034],
[0.541, 0.090, 0.088],
[1.881, 0.506, 0.497],
[1.515, 0.546, 0.495],
[0.033, 0.003, 0.003],
[0.034, 0.016, 0.016],
[0.123, 0.105, 0.103],
[3.318, 0.090, 0.088],
[2.609, 0.146, 0.145],
[3.887, 0.067, 0.066],
[1.417, 0.067, 0.065],
[7.034, 0.332, 0.328],
[4.289, 0.177, 0.176],
[1.773, 0.204, 0.214],
[63.407, 2.564, 2.490],
[42.496, 2.011, 1.993],
[4.502, 0.218, 0.216],
[1.952, 0.120, 0.121],
[0.474, 0.059, 0.062],
[6.655, 0.106, 0.101],
[0.044, 0.010, 0.010],
[0.042, 0.007, 0.007],
[0.480, 0.060, 0.056],
[1.684, 0.042, 0.039],
[1.721, 0.091, 0.091],
[2.587, 0.207, 0.206],
[0.067, 0.044, 0.044],
[0.027, 0.008, 0.007],
[2.282, 0.428, 0.425],
[2.273, 0.501, 0.500],
[1.072, 0.133, 0.133],
[1.717, 0.163, 0.163],
[2.604, 0.431, 0.418],
[3.794, 0.546, 0.545],
[2.398, 0.538, 0.585],
[1.272, 0.564, 0.534],
[4.313, 1.445, 1.481],
[3.711, 0.860, 0.831],
[8.169, 3.717, 3.386],
[0.962, 0.029, 0.028],
[18.979, 0.538, 0.533],
[20.836, 0.642, 0.667],
[38.657, 1.461, 1.388],
[29.873, 0.735, 0.675],
[4.756, 0.189, 0.188],
[2.304, 0.161, 0.161],
[5.272, 0.196, 0.195],
[18.616, 0.557, 0.552],
[15.437, 1.136, 1.125],
[2.560, 2.523, 2.497],
[3.912, 0.561, 0.557],
[9.879, 0.774, 0.793],
[9.665, 4.632, 4.677],
[18.892, 2.283, 2.142],
[18.894, 2.264, 2.160],
[0.953, 0.921, 0.915],
[0.099, 0.075, 0.076],
[0.055, 0.038, 0.037],
[0.055, 0.033, 0.031],
[0.202, 0.159, 0.159],
[0.038, 0.011, 0.011],
[0.023, 0.009, 0.009],
[0.012, 0.003, 0.003]
]
}
]

View File

@ -0,0 +1,85 @@
[
{
"system": "2018-07-12 1.1.54394",
"system_full": "ClickHouse 1.1.54394 2018-07-12",
"version": "1.1.54394",
"kind": "",
"comments": "",
"result":
[
[0.141, 0.016, 0.014],
[0.152, 0.005, 0.005],
[0.820, 0.018, 0.016],
[0.161, 0.011, 0.011],
[0.266, 0.033, 0.032],
[1.024, 0.026, 0.024],
[0.076, 0.004, 0.003],
[0.335, 0.017, 0.017],
[0.508, 0.033, 0.032],
[0.553, 0.090, 0.090],
[1.839, 0.501, 0.497],
[1.519, 0.490, 0.513],
[0.035, 0.003, 0.003],
[0.033, 0.015, 0.015],
[0.116, 0.135, 0.105],
[3.324, 0.088, 0.085],
[2.614, 0.145, 0.144],
[3.882, 0.068, 0.066],
[1.421, 0.067, 0.066],
[7.042, 0.315, 0.312],
[4.326, 0.170, 0.168],
[1.810, 0.205, 0.198],
[63.409, 2.479, 2.463],
[42.496, 1.974, 1.963],
[4.501, 0.223, 0.211],
[1.947, 0.115, 0.114],
[0.488, 0.058, 0.060],
[6.636, 0.103, 0.099],
[0.050, 0.010, 0.010],
[0.043, 0.007, 0.006],
[0.482, 0.055, 0.055],
[1.669, 0.040, 0.041],
[1.713, 0.093, 0.091],
[2.563, 0.201, 0.202],
[0.064, 0.041, 0.041],
[0.028, 0.007, 0.007],
[2.305, 0.425, 0.424],
[2.270, 0.502, 0.506],
[1.070, 0.139, 0.138],
[1.689, 0.166, 0.165],
[2.616, 0.447, 0.459],
[3.835, 0.562, 0.540],
[2.452, 0.581, 0.560],
[1.282, 0.540, 0.544],
[4.321, 1.565, 1.467],
[3.678, 0.811, 0.812],
[8.241, 3.565, 3.693],
[0.961, 0.028, 0.027],
[18.976, 0.509, 0.482],
[20.838, 0.601, 0.737],
[38.809, 1.514, 1.353],
[29.889, 0.690, 0.628],
[4.546, 0.190, 0.188],
[2.314, 0.163, 0.165],
[5.264, 0.197, 0.193],
[18.615, 0.527, 0.516],
[15.439, 1.156, 1.138],
[2.552, 2.521, 2.509],
[3.918, 0.566, 0.557],
[9.883, 0.790, 0.794],
[9.662, 4.592, 4.830],
[18.976, 2.262, 2.254],
[18.926, 2.132, 2.173],
[0.945, 0.918, 0.921],
[0.099, 0.074, 0.074],
[0.053, 0.038, 0.038],
[0.052, 0.030, 0.030],
[0.199, 0.156, 0.155],
[0.038, 0.011, 0.011],
[0.023, 0.009, 0.009],
[0.011, 0.003, 0.003]
]
}
]

View File

@ -0,0 +1,85 @@
[
{
"system": "2018-07-20 18.1",
"system_full": "ClickHouse 18.1.0 2018-07-20",
"version": "18.1.0",
"kind": "",
"comments": "",
"result":
[
[0.130, 0.015, 0.013],
[0.139, 0.005, 0.005],
[0.822, 0.017, 0.016],
[0.160, 0.011, 0.010],
[0.263, 0.051, 0.059],
[0.994, 0.025, 0.024],
[0.076, 0.004, 0.004],
[0.334, 0.017, 0.017],
[0.507, 0.031, 0.030],
[0.553, 0.087, 0.084],
[1.867, 0.486, 0.484],
[1.528, 0.493, 0.493],
[0.034, 0.003, 0.003],
[0.033, 0.015, 0.015],
[0.117, 0.099, 0.099],
[3.353, 0.087, 0.086],
[2.632, 0.145, 0.144],
[3.913, 0.067, 0.065],
[1.433, 0.063, 0.062],
[7.058, 0.303, 0.301],
[4.355, 0.163, 0.161],
[1.826, 0.187, 0.212],
[63.427, 2.395, 2.319],
[42.481, 1.974, 1.956],
[4.485, 0.213, 0.218],
[1.945, 0.123, 0.116],
[0.445, 0.056, 0.055],
[6.633, 0.102, 0.099],
[0.047, 0.010, 0.010],
[0.044, 0.007, 0.007],
[0.479, 0.055, 0.055],
[1.695, 0.040, 0.039],
[1.731, 0.092, 0.095],
[2.547, 0.197, 0.192],
[0.061, 0.041, 0.041],
[0.025, 0.007, 0.007],
[2.289, 0.429, 0.426],
[2.240, 0.506, 0.502],
[1.062, 0.128, 0.126],
[1.688, 0.155, 0.155],
[2.571, 0.456, 0.423],
[3.814, 0.538, 0.546],
[2.467, 0.563, 0.531],
[1.263, 0.545, 0.553],
[4.303, 1.526, 1.539],
[3.667, 0.911, 0.922],
[8.280, 3.588, 3.559],
[0.938, 0.028, 0.027],
[18.975, 0.519, 0.513],
[20.851, 0.588, 0.724],
[38.765, 1.508, 1.345],
[29.904, 0.684, 0.648],
[4.591, 0.180, 0.175],
[2.350, 0.151, 0.150],
[5.295, 0.185, 0.185],
[18.635, 0.520, 0.512],
[15.431, 1.169, 1.144],
[2.543, 2.542, 2.504],
[3.918, 0.545, 0.540],
[9.879, 0.781, 0.765],
[9.687, 4.567, 4.636],
[18.949, 2.314, 2.136],
[18.946, 2.168, 2.227],
[0.950, 0.902, 0.934],
[0.098, 0.073, 0.075],
[0.056, 0.038, 0.037],
[0.055, 0.030, 0.030],
[0.205, 0.157, 0.155],
[0.037, 0.011, 0.011],
[0.022, 0.009, 0.009],
[0.011, 0.003, 0.003]
]
}
]

View File

@ -0,0 +1,85 @@
[
{
"system": "2018-07-28 18.4",
"system_full": "ClickHouse 18.4.0 2018-07-28",
"version": "18.4.0",
"kind": "",
"comments": "",
"result":
[
[0.145, 0.015, 0.013],
[0.042, 0.006, 0.005],
[0.662, 0.016, 0.015],
[0.161, 0.011, 0.010],
[0.268, 0.030, 0.029],
[1.026, 0.025, 0.023],
[0.076, 0.004, 0.003],
[0.334, 0.018, 0.018],
[0.501, 0.031, 0.031],
[0.551, 0.089, 0.086],
[1.893, 0.495, 0.489],
[1.521, 0.506, 0.479],
[0.033, 0.003, 0.003],
[0.032, 0.015, 0.015],
[0.163, 0.131, 0.103],
[3.347, 0.090, 0.087],
[2.623, 0.145, 0.146],
[3.895, 0.068, 0.067],
[1.421, 0.063, 0.064],
[7.053, 0.307, 0.304],
[4.320, 0.159, 0.159],
[1.811, 0.194, 0.200],
[63.418, 2.390, 2.315],
[42.482, 1.944, 1.934],
[4.507, 0.213, 0.210],
[1.947, 0.116, 0.119],
[0.481, 0.057, 0.056],
[6.653, 0.100, 0.098],
[0.045, 0.010, 0.010],
[0.043, 0.007, 0.007],
[0.481, 0.054, 0.055],
[1.683, 0.043, 0.044],
[1.732, 0.092, 0.091],
[2.570, 0.192, 0.193],
[0.056, 0.039, 0.039],
[0.025, 0.007, 0.007],
[2.313, 0.428, 0.426],
[2.253, 0.497, 0.498],
[1.076, 0.121, 0.121],
[1.728, 0.148, 0.149],
[2.579, 0.444, 0.414],
[3.796, 0.532, 0.531],
[2.427, 0.556, 0.563],
[1.267, 0.544, 0.542],
[4.314, 1.538, 1.516],
[3.662, 0.804, 0.869],
[8.244, 3.696, 3.698],
[0.956, 0.028, 0.027],
[18.975, 0.514, 0.507],
[20.853, 0.583, 0.726],
[38.834, 1.380, 1.363],
[29.884, 0.675, 0.640],
[4.554, 0.175, 0.173],
[2.360, 0.147, 0.145],
[5.300, 0.179, 0.179],
[18.661, 0.514, 0.505],
[15.432, 1.161, 1.153],
[2.528, 2.542, 2.512],
[3.929, 0.543, 0.533],
[9.838, 0.765, 0.761],
[9.589, 4.506, 4.642],
[18.961, 2.245, 2.185],
[18.935, 2.127, 2.154],
[0.950, 0.913, 0.889],
[0.098, 0.072, 0.072],
[0.054, 0.037, 0.037],
[0.054, 0.030, 0.030],
[0.203, 0.153, 0.158],
[0.037, 0.011, 0.011],
[0.023, 0.009, 0.009],
[0.012, 0.003, 0.003]
]
}
]

View File

@ -0,0 +1,85 @@
[
{
"system": "2018-07-31 18.5",
"system_full": "ClickHouse 18.5.1 2018-07-31",
"version": "18.5.1",
"kind": "",
"comments": "",
"result":
[
[0.130, 0.015, 0.013],
[0.147, 0.005, 0.005],
[0.819, 0.017, 0.015],
[0.162, 0.011, 0.011],
[0.263, 0.040, 0.054],
[1.003, 0.025, 0.023],
[0.076, 0.004, 0.003],
[0.335, 0.017, 0.017],
[0.509, 0.032, 0.031],
[0.551, 0.095, 0.087],
[1.829, 0.489, 0.496],
[1.510, 0.518, 0.492],
[0.035, 0.003, 0.003],
[0.032, 0.015, 0.015],
[0.122, 0.127, 0.101],
[3.329, 0.090, 0.087],
[2.609, 0.143, 0.141],
[3.895, 0.067, 0.066],
[1.433, 0.064, 0.064],
[7.038, 0.307, 0.305],
[4.335, 0.160, 0.160],
[1.817, 0.216, 0.214],
[63.378, 2.378, 2.313],
[42.494, 1.940, 1.929],
[4.510, 0.212, 0.209],
[1.955, 0.119, 0.117],
[0.496, 0.058, 0.056],
[6.639, 0.100, 0.097],
[0.046, 0.010, 0.010],
[0.044, 0.007, 0.006],
[0.525, 0.055, 0.056],
[1.739, 0.043, 0.041],
[1.749, 0.091, 0.091],
[2.566, 0.193, 0.189],
[0.061, 0.041, 0.041],
[0.026, 0.007, 0.007],
[2.331, 0.427, 0.426],
[2.279, 0.504, 0.502],
[1.054, 0.122, 0.121],
[1.735, 0.149, 0.150],
[2.649, 0.426, 0.415],
[3.799, 0.552, 0.564],
[2.437, 0.573, 0.522],
[1.255, 0.532, 0.556],
[4.340, 1.534, 1.446],
[3.647, 0.811, 0.846],
[8.212, 3.519, 3.542],
[0.951, 0.028, 0.027],
[18.978, 0.661, 0.508],
[20.848, 0.583, 0.575],
[38.808, 1.432, 1.348],
[29.875, 0.679, 0.651],
[4.778, 0.176, 0.174],
[2.370, 0.148, 0.146],
[5.302, 0.186, 0.178],
[18.666, 0.522, 0.514],
[15.419, 1.157, 1.141],
[2.527, 2.526, 2.513],
[3.948, 0.539, 0.544],
[9.857, 0.772, 0.750],
[9.827, 4.565, 4.514],
[18.957, 2.301, 2.151],
[18.952, 2.147, 2.239],
[0.940, 0.897, 0.907],
[0.099, 0.072, 0.073],
[0.055, 0.037, 0.037],
[0.054, 0.030, 0.029],
[0.193, 0.155, 0.152],
[0.035, 0.011, 0.010],
[0.023, 0.009, 0.009],
[0.012, 0.003, 0.003]
]
}
]

View File

@ -0,0 +1,85 @@
[
{
"system": "2018-08-01 18.6",
"system_full": "ClickHouse 18.6.0 2018-08-01",
"version": "18.6.0",
"kind": "",
"comments": "",
"result":
[
[0.125, 0.014, 0.013],
[0.156, 0.005, 0.005],
[0.818, 0.016, 0.015],
[0.162, 0.011, 0.011],
[0.265, 0.044, 0.031],
[1.023, 0.025, 0.023],
[0.076, 0.004, 0.004],
[0.335, 0.019, 0.017],
[0.508, 0.032, 0.031],
[0.551, 0.088, 0.086],
[1.844, 0.493, 0.491],
[1.520, 0.485, 0.492],
[0.035, 0.003, 0.003],
[0.033, 0.015, 0.015],
[0.155, 0.109, 0.129],
[3.314, 0.090, 0.088],
[2.611, 0.144, 0.142],
[3.902, 0.066, 0.065],
[1.423, 0.064, 0.062],
[7.049, 0.304, 0.330],
[4.330, 0.159, 0.158],
[1.834, 0.193, 0.176],
[63.516, 2.328, 2.310],
[42.645, 1.945, 1.913],
[4.521, 0.212, 0.217],
[1.923, 0.112, 0.114],
[0.479, 0.056, 0.055],
[6.627, 0.101, 0.097],
[0.047, 0.010, 0.009],
[0.043, 0.007, 0.006],
[0.482, 0.058, 0.055],
[1.693, 0.043, 0.043],
[1.744, 0.098, 0.093],
[2.565, 0.192, 0.192],
[0.059, 0.040, 0.040],
[0.026, 0.007, 0.007],
[2.325, 0.425, 0.426],
[2.265, 0.501, 0.499],
[1.043, 0.122, 0.122],
[1.718, 0.151, 0.150],
[2.627, 0.425, 0.441],
[3.801, 0.530, 0.528],
[2.398, 0.525, 0.520],
[1.238, 0.523, 0.543],
[4.345, 1.505, 1.513],
[3.667, 0.851, 0.852],
[8.282, 3.515, 3.493],
[0.962, 0.028, 0.028],
[18.978, 0.518, 0.514],
[20.849, 0.814, 0.578],
[38.796, 1.382, 1.331],
[29.874, 0.665, 0.650],
[4.545, 0.181, 0.174],
[2.356, 0.147, 0.145],
[5.302, 0.180, 0.179],
[18.680, 0.516, 0.509],
[15.430, 1.162, 1.158],
[2.515, 2.502, 2.538],
[3.927, 0.533, 0.525],
[9.878, 0.769, 0.767],
[9.608, 4.694, 4.443],
[19.021, 2.138, 2.202],
[18.958, 2.174, 2.204],
[0.956, 0.899, 0.929],
[0.099, 0.074, 0.073],
[0.055, 0.037, 0.037],
[0.051, 0.031, 0.030],
[0.203, 0.157, 0.156],
[0.040, 0.011, 0.011],
[0.024, 0.009, 0.009],
[0.012, 0.003, 0.003]
]
}
]

View File

@ -0,0 +1,85 @@
[
{
"system": "2018-08-13 18.10",
"system_full": "ClickHouse 18.10.3 2018-08-13",
"version": "18.10.3",
"kind": "",
"comments": "",
"result":
[
[0.138, 0.015, 0.013],
[0.119, 0.006, 0.006],
[0.820, 0.017, 0.016],
[0.161, 0.011, 0.011],
[0.270, 0.044, 0.046],
[1.009, 0.025, 0.024],
[0.076, 0.004, 0.004],
[0.335, 0.017, 0.017],
[0.505, 0.032, 0.030],
[0.554, 0.087, 0.090],
[1.887, 0.524, 0.504],
[1.530, 0.485, 0.490],
[0.034, 0.003, 0.003],
[0.032, 0.022, 0.020],
[0.174, 0.132, 0.134],
[3.331, 0.091, 0.087],
[2.632, 0.154, 0.152],
[3.881, 0.074, 0.072],
[1.421, 0.067, 0.067],
[7.055, 0.298, 0.291],
[4.370, 0.161, 0.160],
[1.828, 0.417, 0.423],
[63.020, 2.017, 1.993],
[42.473, 1.863, 1.855],
[4.489, 0.220, 0.215],
[1.947, 0.158, 0.208],
[0.357, 0.078, 0.092],
[6.607, 0.115, 0.103],
[0.043, 0.011, 0.010],
[0.043, 0.008, 0.008],
[0.483, 0.060, 0.061],
[1.687, 0.042, 0.042],
[1.732, 0.093, 0.093],
[2.572, 0.194, 0.192],
[0.066, 0.048, 0.048],
[0.028, 0.008, 0.008],
[2.290, 0.435, 0.438],
[2.276, 0.503, 0.506],
[1.054, 0.127, 0.126],
[1.702, 0.160, 0.165],
[2.545, 0.429, 0.464],
[3.846, 0.551, 0.535],
[2.413, 0.575, 0.554],
[1.244, 0.539, 0.582],
[4.310, 1.570, 1.539],
[3.635, 0.910, 0.868],
[8.212, 4.811, 4.268],
[0.947, 0.028, 0.027],
[18.972, 0.518, 0.506],
[20.843, 0.588, 0.572],
[38.776, 1.377, 1.363],
[29.917, 0.670, 0.630],
[4.779, 0.186, 0.182],
[2.330, 0.163, 0.153],
[5.283, 0.193, 0.187],
[18.637, 0.544, 0.518],
[15.417, 1.178, 1.161],
[2.396, 2.348, 2.330],
[3.916, 0.537, 0.539],
[9.855, 0.752, 0.735],
[9.330, 4.220, 4.258],
[18.911, 2.108, 2.111],
[18.849, 2.087, 2.145],
[0.942, 0.885, 0.891],
[0.102, 0.077, 0.073],
[0.062, 0.038, 0.038],
[0.052, 0.030, 0.030],
[0.251, 0.173, 0.193],
[0.035, 0.011, 0.011],
[0.023, 0.009, 0.009],
[0.011, 0.003, 0.003]
]
}
]

View File

@ -0,0 +1,85 @@
[
{
"system": "2018-09-16 18.12",
"system_full": "ClickHouse 18.12.17 2018-09-16",
"version": "18.12.17",
"kind": "",
"comments": "",
"result":
[
[0.132, 0.018, 0.014],
[0.093, 0.006, 0.006],
[0.818, 0.020, 0.017],
[0.164, 0.012, 0.012],
[0.262, 0.042, 0.044],
[0.988, 0.028, 0.026],
[0.076, 0.004, 0.004],
[0.337, 0.020, 0.021],
[0.506, 0.038, 0.036],
[0.544, 0.098, 0.100],
[1.844, 0.533, 0.538],
[1.497, 0.510, 0.509],
[0.034, 0.004, 0.004],
[0.036, 0.016, 0.016],
[0.142, 0.148, 0.131],
[3.307, 0.098, 0.096],
[2.591, 0.160, 0.157],
[3.871, 0.082, 0.079],
[1.398, 0.074, 0.074],
[7.032, 0.349, 0.336],
[4.265, 0.170, 0.165],
[1.831, 0.221, 0.214],
[63.399, 2.641, 2.602],
[42.509, 2.107, 2.060],
[4.499, 0.233, 0.229],
[1.916, 0.146, 0.140],
[0.418, 0.064, 0.071],
[6.635, 0.123, 0.119],
[0.046, 0.011, 0.011],
[0.037, 0.008, 0.008],
[0.485, 0.062, 0.067],
[1.641, 0.044, 0.043],
[1.696, 0.097, 0.092],
[2.573, 0.200, 0.196],
[0.067, 0.046, 0.046],
[0.032, 0.010, 0.009],
[2.249, 0.429, 0.431],
[2.248, 0.513, 0.508],
[1.058, 0.132, 0.132],
[1.720, 0.162, 0.159],
[2.538, 0.437, 0.431],
[3.844, 0.542, 0.544],
[2.392, 0.533, 0.540],
[1.258, 0.541, 0.530],
[4.264, 1.392, 1.386],
[3.673, 0.799, 0.787],
[8.001, 2.947, 2.931],
[0.935, 0.060, 0.028],
[18.966, 0.610, 0.583],
[20.808, 0.629, 0.617],
[38.800, 1.481, 1.506],
[29.883, 0.663, 0.637],
[4.797, 0.190, 0.188],
[2.316, 0.167, 0.162],
[5.250, 0.199, 0.195],
[18.608, 0.545, 0.518],
[15.452, 1.180, 1.163],
[2.484, 2.458, 2.456],
[3.906, 0.493, 0.500],
[9.845, 0.714, 0.712],
[9.286, 4.143, 4.528],
[18.894, 2.139, 2.143],
[18.917, 2.145, 2.108],
[0.943, 0.872, 0.896],
[0.104, 0.081, 0.079],
[0.064, 0.045, 0.041],
[0.059, 0.036, 0.034],
[0.244, 0.183, 0.183],
[0.040, 0.012, 0.012],
[0.026, 0.011, 0.010],
[0.013, 0.003, 0.003]
]
}
]

View File

@ -0,0 +1,85 @@
[
{
"system": "2018-12-19 18.14",
"system_full": "ClickHouse 18.14.19 2018-12-19",
"version": "18.14.19",
"kind": "",
"comments": "",
"result":
[
[0.133, 0.016, 0.015],
[0.157, 0.006, 0.006],
[0.816, 0.018, 0.017],
[0.164, 0.012, 0.012],
[0.263, 0.036, 0.040],
[1.029, 0.027, 0.025],
[0.076, 0.004, 0.004],
[0.337, 0.018, 0.018],
[0.503, 0.034, 0.032],
[0.557, 0.088, 0.091],
[1.912, 0.517, 0.510],
[1.523, 0.506, 0.485],
[0.038, 0.004, 0.004],
[0.035, 0.015, 0.015],
[0.141, 0.109, 0.141],
[3.336, 0.088, 0.086],
[2.626, 0.147, 0.144],
[3.906, 0.068, 0.065],
[1.436, 0.067, 0.065],
[7.020, 0.316, 0.300],
[4.302, 0.169, 0.166],
[1.817, 0.197, 0.192],
[63.459, 2.171, 2.150],
[42.546, 1.915, 1.894],
[4.504, 0.219, 0.214],
[1.864, 0.155, 0.146],
[0.428, 0.074, 0.069],
[6.621, 0.111, 0.106],
[0.043, 0.010, 0.009],
[0.044, 0.008, 0.007],
[0.480, 0.059, 0.060],
[1.686, 0.041, 0.040],
[1.725, 0.090, 0.091],
[2.558, 0.195, 0.191],
[0.063, 0.046, 0.043],
[0.033, 0.008, 0.008],
[2.275, 0.434, 0.422],
[2.260, 0.507, 0.511],
[1.074, 0.123, 0.122],
[1.718, 0.151, 0.150],
[2.602, 0.429, 0.418],
[3.819, 0.552, 0.535],
[2.433, 0.508, 0.515],
[1.265, 0.543, 0.536],
[4.278, 1.386, 1.376],
[3.658, 0.865, 0.774],
[7.959, 2.910, 2.931],
[0.948, 0.033, 0.060],
[18.942, 0.572, 0.552],
[20.834, 0.579, 0.570],
[38.782, 1.378, 1.348],
[29.262, 0.607, 0.636],
[4.575, 0.185, 0.178],
[2.330, 0.158, 0.153],
[5.290, 0.193, 0.187],
[18.670, 0.513, 0.505],
[15.443, 1.150, 1.134],
[2.452, 2.435, 2.429],
[3.926, 0.474, 0.477],
[9.856, 0.684, 0.678],
[9.269, 4.033, 4.061],
[18.931, 2.123, 2.073],
[18.914, 2.101, 2.123],
[0.910, 0.860, 0.860],
[0.104, 0.076, 0.078],
[0.060, 0.040, 0.038],
[0.057, 0.033, 0.035],
[0.232, 0.173, 0.162],
[0.035, 0.025, 0.012],
[0.024, 0.013, 0.010],
[0.012, 0.003, 0.003]
]
}
]

View File

@ -0,0 +1,85 @@
[
{
"system": "2018-12-21 18.16",
"system_full": "ClickHouse 18.16.1 2018-12-21",
"version": "18.16.1",
"kind": "",
"comments": "",
"result":
[
[0.133, 0.194, 0.016],
[0.215, 0.082, 0.007],
[0.818, 0.050, 0.021],
[0.156, 0.066, 0.016],
[0.269, 0.038, 0.045],
[1.159, 0.032, 0.029],
[0.086, 0.008, 0.008],
[0.335, 0.065, 0.024],
[0.488, 0.040, 0.040],
[0.550, 0.097, 0.097],
[1.906, 0.593, 0.584],
[1.503, 0.533, 0.522],
[0.038, 0.005, 0.005],
[0.036, 0.023, 0.017],
[0.185, 0.198, 0.162],
[3.335, 0.096, 0.057],
[2.631, 0.172, 0.142],
[3.884, 0.084, 0.057],
[1.463, 0.072, 0.072],
[7.189, 0.312, 0.306],
[4.632, 0.174, 0.171],
[1.865, 0.245, 0.194],
[63.399, 2.148, 2.072],
[42.517, 1.863, 1.819],
[4.507, 0.249, 0.221],
[2.078, 0.138, 0.141],
[0.455, 0.102, 0.070],
[11.873, 0.138, 0.124],
[0.046, 0.012, 0.012],
[0.032, 0.009, 0.009],
[0.482, 0.060, 0.060],
[1.682, 0.045, 0.045],
[1.719, 0.097, 0.096],
[2.567, 0.203, 0.202],
[0.063, 0.045, 0.044],
[0.027, 0.010, 0.010],
[2.283, 0.434, 0.437],
[2.256, 0.520, 0.521],
[1.078, 0.136, 0.135],
[1.693, 0.162, 0.161],
[2.589, 0.464, 0.460],
[3.809, 0.623, 0.589],
[2.391, 0.562, 0.579],
[1.265, 0.575, 0.579],
[4.293, 1.441, 1.485],
[3.656, 0.792, 0.796],
[7.960, 3.260, 3.240],
[0.923, 0.030, 0.029],
[18.973, 0.584, 0.581],
[20.841, 0.600, 0.593],
[38.786, 1.403, 1.398],
[39.036, 0.702, 0.684],
[4.554, 0.194, 0.195],
[2.325, 0.169, 0.165],
[5.239, 0.200, 0.197],
[18.609, 0.522, 0.517],
[15.427, 1.150, 1.153],
[2.475, 2.443, 2.442],
[3.870, 0.524, 0.523],
[9.837, 0.757, 0.748],
[9.334, 4.308, 4.309],
[18.947, 2.232, 2.243],
[18.972, 2.260, 2.283],
[0.991, 0.930, 0.932],
[0.116, 0.116, 0.093],
[0.061, 0.075, 0.050],
[0.056, 0.062, 0.036],
[0.272, 0.303, 0.222],
[0.041, 0.043, 0.014],
[0.025, 0.041, 0.012],
[0.014, 0.030, 0.003]
]
}
]

View File

@ -0,0 +1,85 @@
[
{
"system": "2019-04-02 19.1",
"system_full": "ClickHouse 19.1.16.79 2019-04-02",
"version": "19.1.16.79",
"kind": "",
"comments": "",
"result":
[
[0.139, 0.015, 0.012],
[0.041, 0.005, 0.005],
[0.817, 0.017, 0.016],
[0.160, 0.011, 0.010],
[0.264, 0.060, 0.034],
[0.987, 0.025, 0.023],
[0.075, 0.004, 0.004],
[0.335, 0.017, 0.017],
[0.507, 0.031, 0.031],
[0.555, 0.087, 0.087],
[1.861, 0.494, 0.490],
[1.510, 0.477, 0.488],
[0.033, 0.003, 0.003],
[0.031, 0.015, 0.015],
[0.156, 0.100, 0.129],
[3.293, 0.092, 0.088],
[2.613, 0.146, 0.141],
[3.902, 0.067, 0.065],
[1.432, 0.063, 0.062],
[7.049, 0.304, 0.304],
[4.342, 0.160, 0.159],
[1.827, 0.198, 0.197],
[63.412, 2.385, 2.319],
[42.497, 1.936, 1.924],
[4.499, 0.213, 0.209],
[1.975, 0.120, 0.112],
[0.460, 0.060, 0.057],
[6.642, 0.101, 0.095],
[0.045, 0.010, 0.010],
[0.042, 0.007, 0.007],
[0.482, 0.055, 0.058],
[1.667, 0.043, 0.042],
[1.720, 0.093, 0.094],
[2.556, 0.192, 0.188],
[0.059, 0.039, 0.039],
[0.026, 0.007, 0.007],
[2.299, 0.431, 0.425],
[2.258, 0.505, 0.502],
[1.050, 0.122, 0.121],
[1.715, 0.149, 0.153],
[2.605, 0.441, 0.423],
[3.786, 0.563, 0.520],
[2.393, 0.532, 0.532],
[1.268, 0.556, 0.533],
[4.330, 1.530, 1.482],
[3.647, 0.792, 0.833],
[8.224, 3.651, 3.551],
[0.941, 0.028, 0.027],
[18.967, 0.511, 0.507],
[20.837, 0.583, 0.583],
[38.807, 1.472, 1.356],
[29.895, 0.646, 0.669],
[4.550, 0.175, 0.173],
[2.371, 0.147, 0.145],
[5.296, 0.179, 0.177],
[18.656, 0.513, 0.501],
[15.434, 1.153, 1.145],
[2.549, 2.527, 2.507],
[3.922, 0.537, 0.554],
[9.872, 0.770, 0.784],
[9.630, 4.556, 4.342],
[18.955, 2.259, 2.280],
[18.975, 2.125, 2.130],
[0.930, 0.908, 0.909],
[0.099, 0.074, 0.073],
[0.053, 0.037, 0.036],
[0.055, 0.030, 0.029],
[0.201, 0.156, 0.158],
[0.034, 0.011, 0.011],
[0.023, 0.009, 0.009],
[0.011, 0.003, 0.003]
]
}
]

View File

@ -0,0 +1,85 @@
[
{
"system": "2019-04-02 19.3",
"system_full": "ClickHouse 19.3.9.12 2019-04-02(adaptive)",
"version": "19.3.9.12",
"kind": "adaptive",
"comments": "",
"result":
[
[0.045, 0.003, 0.003],
[0.022, 0.002, 0.002],
[0.018, 0.003, 0.004],
[0.016, 0.002, 0.002],
[0.018, 0.002, 0.002],
[0.017, 0.003, 0.003],
[0.018, 0.002, 0.002],
[0.073, 0.029, 0.029],
[0.023, 0.011, 0.011],
[0.010, 0.002, 0.002],
[1.082, 0.342, 0.362],
[0.613, 0.344, 0.320],
[0.035, 0.003, 0.003],
[0.031, 0.014, 0.019],
[0.132, 0.102, 0.106],
[3.420, 0.095, 0.090],
[3.012, 0.748, 0.750],
[2.259, 0.060, 0.057],
[1.270, 0.047, 0.048],
[4.462, 0.226, 0.204],
[4.212, 0.184, 0.177],
[1.818, 0.219, 0.206],
[63.399, 2.050, 2.016],
[42.454, 1.432, 1.429],
[3.563, 0.822, 0.814],
[0.785, 0.133, 0.141],
[0.118, 0.079, 0.082],
[3.214, 0.089, 0.077],
[0.010, 0.001, 0.001],
[0.029, 0.008, 0.009],
[0.382, 0.025, 0.026],
[1.707, 0.031, 0.031],
[1.691, 0.079, 0.091],
[2.601, 0.200, 0.212],
[0.025, 0.012, 0.011],
[0.018, 0.009, 0.009],
[2.124, 0.417, 0.421],
[1.997, 0.462, 0.461],
[1.043, 0.130, 0.129],
[1.665, 0.145, 0.147],
[2.617, 0.485, 0.478],
[3.811, 0.606, 0.569],
[2.376, 0.559, 0.562],
[1.199, 0.566, 0.570],
[4.246, 1.434, 1.415],
[3.672, 0.828, 0.813],
[7.948, 3.037, 3.016],
[0.911, 0.048, 0.039],
[19.548, 0.495, 0.449],
[21.486, 0.568, 0.557],
[40.178, 1.318, 1.298],
[39.525, 0.609, 0.554],
[4.645, 0.196, 0.204],
[2.291, 0.171, 0.175],
[5.290, 0.234, 0.213],
[19.139, 0.450, 0.450],
[15.793, 0.791, 0.776],
[1.155, 1.141, 1.128],
[3.837, 0.491, 0.484],
[9.820, 0.730, 0.704],
[9.079, 4.077, 4.048],
[19.457, 2.042, 2.017],
[19.483, 2.137, 2.010],
[0.899, 0.829, 0.833],
[0.178, 0.135, 0.123],
[0.073, 0.051, 0.048],
[0.072, 0.037, 0.042],
[0.314, 0.274, 0.253],
[0.059, 0.017, 0.028],
[0.041, 0.012, 0.022],
[0.013, 0.002, 0.002]
]
}
]

View File

@ -0,0 +1,85 @@
[
{
"system": "2019-05-13 19.4",
"system_full": "ClickHouse 19.4.5.35 2019-05-13",
"version": "19.4.5.35",
"kind": "",
"comments": "",
"result":
[
[0.072, 0.009, 0.009],
[0.075, 0.032, 0.032],
[0.066, 0.008, 0.008],
[0.055, 0.012, 0.012],
[0.072, 0.036, 0.036],
[0.124, 0.019, 0.018],
[0.101, 0.005, 0.004],
[0.335, 0.033, 0.032],
[0.503, 0.047, 0.047],
[0.528, 0.094, 0.093],
[1.898, 0.567, 0.540],
[1.502, 0.515, 0.508],
[0.035, 0.004, 0.004],
[0.032, 0.013, 0.015],
[0.134, 0.110, 0.104],
[3.333, 0.095, 0.095],
[2.608, 0.159, 0.152],
[2.203, 0.063, 0.062],
[1.316, 0.057, 0.058],
[5.163, 0.198, 0.186],
[4.884, 0.160, 0.153],
[1.903, 0.188, 0.184],
[63.457, 2.105, 2.057],
[42.487, 1.567, 1.545],
[4.497, 0.232, 0.226],
[1.435, 0.145, 0.166],
[0.262, 0.053, 0.059],
[2.915, 0.098, 0.081],
[0.102, 0.011, 0.011],
[0.045, 0.008, 0.007],
[0.481, 0.066, 0.066],
[1.682, 0.046, 0.046],
[1.710, 0.099, 0.101],
[2.556, 0.213, 0.206],
[0.075, 0.050, 0.046],
[0.031, 0.008, 0.008],
[2.245, 0.429, 0.420],
[2.246, 0.490, 0.483],
[1.073, 0.117, 0.119],
[1.735, 0.152, 0.157],
[2.644, 0.415, 0.401],
[3.812, 0.553, 0.556],
[2.404, 0.521, 0.515],
[1.262, 0.556, 0.561],
[4.287, 1.389, 1.380],
[3.628, 0.785, 0.777],
[8.027, 2.905, 2.912],
[0.945, 0.081, 0.028],
[18.915, 0.529, 0.503],
[20.803, 0.595, 0.580],
[38.783, 1.390, 1.363],
[38.820, 0.679, 0.639],
[4.565, 0.180, 0.183],
[2.309, 0.161, 0.150],
[5.264, 0.191, 0.183],
[18.646, 0.540, 0.521],
[15.425, 1.115, 1.092],
[2.306, 2.275, 2.265],
[3.941, 0.478, 0.488],
[9.883, 0.714, 0.704],
[9.498, 4.322, 4.348],
[18.919, 2.039, 2.010],
[18.883, 2.028, 1.980],
[0.916, 0.851, 0.867],
[0.114, 0.083, 0.077],
[0.058, 0.039, 0.041],
[0.053, 0.035, 0.028],
[0.248, 0.186, 0.182],
[0.041, 0.016, 0.014],
[0.025, 0.011, 0.010],
[0.013, 0.003, 0.003]
]
}
]

View File

@ -0,0 +1,85 @@
[
{
"system": "2019-05-13 19.5",
"system_full": "ClickHouse 19.5.4.22 2019-05-13",
"kind": "",
"version": "19.5.4.22",
"comments": "",
"result":
[
[0.067, 0.010, 0.009],
[0.076, 0.032, 0.032],
[0.045, 0.008, 0.008],
[0.049, 0.011, 0.011],
[0.071, 0.035, 0.035],
[0.232, 0.020, 0.021],
[0.101, 0.005, 0.005],
[0.334, 0.035, 0.033],
[0.499, 0.047, 0.048],
[0.532, 0.096, 0.091],
[1.878, 0.562, 0.555],
[1.484, 0.513, 0.504],
[0.034, 0.003, 0.003],
[0.031, 0.015, 0.015],
[0.130, 0.114, 0.108],
[3.323, 0.095, 0.095],
[2.616, 0.160, 0.147],
[2.218, 0.063, 0.061],
[1.333, 0.059, 0.057],
[5.176, 0.211, 0.196],
[4.883, 0.167, 0.172],
[1.905, 0.194, 0.185],
[63.470, 2.105, 2.067],
[42.523, 1.606, 1.560],
[4.501, 0.231, 0.231],
[1.412, 0.159, 0.162],
[0.247, 0.060, 0.057],
[2.935, 0.075, 0.084],
[0.073, 0.010, 0.010],
[0.046, 0.008, 0.007],
[0.481, 0.063, 0.061],
[1.669, 0.042, 0.043],
[1.693, 0.097, 0.096],
[2.565, 0.211, 0.207],
[0.062, 0.044, 0.044],
[0.029, 0.008, 0.008],
[2.243, 0.438, 0.429],
[2.231, 0.493, 0.485],
[1.071, 0.119, 0.121],
[1.717, 0.143, 0.145],
[2.616, 0.422, 0.416],
[3.792, 0.523, 0.542],
[2.383, 0.535, 0.503],
[1.249, 0.568, 0.560],
[4.310, 1.423, 1.386],
[3.654, 0.776, 0.764],
[8.060, 2.973, 2.907],
[0.962, 0.058, 0.029],
[18.952, 0.492, 0.487],
[20.838, 0.593, 0.563],
[38.796, 1.366, 1.345],
[38.903, 0.672, 0.637],
[4.568, 0.181, 0.177],
[2.335, 0.148, 0.151],
[5.300, 0.194, 0.181],
[18.630, 0.520, 0.498],
[15.435, 1.086, 1.064],
[2.320, 2.304, 2.300],
[3.932, 0.477, 0.485],
[9.834, 0.713, 0.687],
[9.485, 4.400, 4.381],
[18.930, 2.046, 1.980],
[18.933, 2.012, 1.974],
[0.949, 0.882, 0.875],
[0.112, 0.097, 0.082],
[0.054, 0.043, 0.046],
[0.052, 0.029, 0.036],
[0.243, 0.207, 0.188],
[0.044, 0.014, 0.019],
[0.026, 0.010, 0.010],
[0.015, 0.003, 0.003]
]
}
]

View File

@ -0,0 +1,85 @@
[
{
"system": "2019-06-15 19.6",
"system_full": "ClickHouse 19.6.3.18 2019-06-15(adaptive)",
"version": "19.6.3.18",
"kind": "adaptive",
"comments": "",
"result":
[
[0.033, 0.003, 0.003],
[0.015, 0.002, 0.002],
[0.021, 0.003, 0.003],
[0.015, 0.002, 0.002],
[0.016, 0.002, 0.002],
[0.019, 0.003, 0.003],
[0.018, 0.001, 0.001],
[0.063, 0.024, 0.024],
[0.022, 0.008, 0.008],
[0.015, 0.002, 0.002],
[1.237, 0.349, 0.337],
[0.600, 0.297, 0.316],
[0.040, 0.003, 0.003],
[0.034, 0.014, 0.013],
[0.135, 0.109, 0.099],
[3.433, 0.097, 0.093],
[3.003, 0.670, 0.666],
[2.257, 0.063, 0.064],
[1.274, 0.051, 0.052],
[4.465, 0.202, 0.199],
[4.254, 0.161, 0.164],
[1.818, 0.177, 0.188],
[63.476, 2.082, 2.042],
[42.480, 1.577, 1.542],
[3.488, 0.723, 0.708],
[0.786, 0.147, 0.156],
[0.115, 0.066, 0.063],
[3.706, 0.087, 0.089],
[0.060, 0.012, 0.011],
[0.055, 0.009, 0.008],
[0.433, 0.067, 0.072],
[1.620, 0.049, 0.050],
[1.647, 0.109, 0.101],
[2.557, 0.207, 0.194],
[0.078, 0.050, 0.047],
[0.037, 0.009, 0.009],
[1.997, 0.420, 0.411],
[2.002, 0.465, 0.469],
[1.027, 0.117, 0.116],
[1.681, 0.141, 0.139],
[2.648, 0.398, 0.391],
[3.791, 0.510, 0.499],
[2.353, 0.529, 0.529],
[1.226, 0.547, 0.542],
[4.267, 1.333, 1.305],
[3.680, 0.733, 0.708],
[8.051, 2.804, 2.865],
[0.917, 0.042, 0.031],
[19.546, 0.463, 0.438],
[21.449, 0.555, 0.548],
[40.133, 1.226, 1.204],
[39.599, 0.606, 0.569],
[4.663, 0.176, 0.174],
[2.341, 0.161, 0.147],
[5.326, 0.188, 0.176],
[19.228, 0.468, 0.449],
[15.821, 1.027, 1.003],
[2.306, 2.271, 2.296],
[3.861, 0.479, 0.446],
[9.817, 0.688, 0.668],
[9.318, 4.049, 4.092],
[19.435, 1.893, 1.868],
[19.280, 1.873, 1.860],
[0.921, 0.865, 0.852],
[0.095, 0.059, 0.064],
[0.055, 0.028, 0.035],
[0.048, 0.021, 0.020],
[0.191, 0.135, 0.126],
[0.039, 0.012, 0.010],
[0.028, 0.008, 0.008],
[0.016, 0.002, 0.002]
]
}
]

View File

@ -0,0 +1,85 @@
[
{
"system": "2019-07-05 19.7",
"system_full": "ClickHouse 19.7.5.29 2019-07-05(adaptive)",
"version": "19.7.5.29",
"kind": "adaptive",
"comments": "",
"result":
[
[0.039, 0.003, 0.003],
[0.015, 0.002, 0.001],
[0.020, 0.003, 0.003],
[0.016, 0.002, 0.002],
[0.016, 0.002, 0.002],
[0.019, 0.003, 0.003],
[0.016, 0.001, 0.001],
[0.067, 0.025, 0.024],
[0.020, 0.008, 0.008],
[0.011, 0.002, 0.002],
[1.090, 0.342, 0.338],
[0.591, 0.306, 0.312],
[0.036, 0.003, 0.003],
[0.032, 0.014, 0.014],
[0.137, 0.107, 0.101],
[3.428, 0.100, 0.093],
[2.994, 0.681, 0.678],
[2.268, 0.066, 0.063],
[1.258, 0.052, 0.047],
[4.453, 0.211, 0.188],
[4.249, 0.163, 0.160],
[1.831, 0.176, 0.173],
[63.471, 2.099, 2.050],
[42.482, 1.609, 1.601],
[3.497, 0.735, 0.714],
[0.799, 0.147, 0.176],
[0.116, 0.056, 0.058],
[3.715, 0.088, 0.086],
[0.064, 0.011, 0.010],
[0.047, 0.008, 0.008],
[0.432, 0.065, 0.066],
[1.635, 0.049, 0.048],
[1.658, 0.105, 0.105],
[2.558, 0.201, 0.198],
[0.066, 0.040, 0.040],
[0.034, 0.008, 0.008],
[2.066, 0.432, 0.433],
[2.033, 0.491, 0.479],
[1.050, 0.122, 0.122],
[1.696, 0.147, 0.146],
[2.613, 0.427, 0.389],
[3.795, 0.508, 0.500],
[2.339, 0.509, 0.526],
[1.202, 0.541, 0.548],
[4.288, 1.364, 1.337],
[3.671, 0.734, 0.723],
[8.031, 2.884, 2.832],
[0.896, 0.038, 0.031],
[19.524, 0.461, 0.441],
[21.437, 0.578, 0.549],
[40.135, 1.244, 1.213],
[39.587, 0.612, 0.601],
[4.660, 0.181, 0.178],
[2.325, 0.161, 0.149],
[5.324, 0.203, 0.178],
[19.194, 0.483, 0.460],
[15.815, 1.027, 1.021],
[2.272, 2.248, 2.269],
[3.857, 0.466, 0.455],
[9.839, 0.694, 0.669],
[9.343, 4.105, 4.058],
[19.485, 1.906, 1.864],
[19.375, 1.905, 1.862],
[0.924, 0.848, 0.844],
[0.091, 0.066, 0.058],
[0.052, 0.029, 0.029],
[0.046, 0.024, 0.020],
[0.185, 0.132, 0.140],
[0.037, 0.010, 0.011],
[0.027, 0.008, 0.009],
[0.015, 0.002, 0.002]
]
}
]

View File

@ -0,0 +1,85 @@
[
{
"system": "2019-06-11 19.8",
"system_full": "ClickHouse 19.8.3.8 2019-06-11(adaptive)",
"version": "19.8.3.8",
"kind": "adaptive",
"comments": "",
"result":
[
[0.036, 0.003, 0.003],
[0.014, 0.002, 0.001],
[0.022, 0.003, 0.003],
[0.015, 0.002, 0.002],
[0.016, 0.002, 0.002],
[0.019, 0.003, 0.003],
[0.017, 0.001, 0.001],
[0.063, 0.026, 0.027],
[0.019, 0.008, 0.008],
[0.009, 0.002, 0.001],
[1.119, 0.338, 0.340],
[0.593, 0.300, 0.300],
[0.040, 0.003, 0.003],
[0.035, 0.014, 0.013],
[0.162, 0.107, 0.107],
[3.426, 0.100, 0.091],
[3.003, 0.671, 0.667],
[2.275, 0.062, 0.063],
[1.285, 0.054, 0.055],
[4.459, 0.210, 0.192],
[4.257, 0.179, 0.163],
[1.813, 0.178, 0.183],
[63.480, 2.122, 2.062],
[42.481, 1.598, 1.581],
[3.489, 0.717, 0.709],
[0.796, 0.124, 0.195],
[0.114, 0.054, 0.052],
[3.719, 0.088, 0.085],
[0.063, 0.011, 0.011],
[0.046, 0.009, 0.008],
[0.411, 0.060, 0.058],
[1.630, 0.044, 0.043],
[1.666, 0.098, 0.097],
[2.572, 0.200, 0.194],
[0.072, 0.041, 0.043],
[0.038, 0.009, 0.008],
[2.024, 0.439, 0.425],
[2.018, 0.486, 0.484],
[1.032, 0.122, 0.120],
[1.691, 0.153, 0.151],
[2.577, 0.398, 0.386],
[3.811, 0.511, 0.494],
[2.366, 0.527, 0.515],
[1.183, 0.535, 0.537],
[4.240, 1.323, 1.311],
[3.667, 0.733, 0.717],
[7.945, 2.772, 2.820],
[0.863, 0.046, 0.028],
[19.550, 0.424, 0.417],
[21.446, 0.539, 0.520],
[40.092, 1.202, 1.167],
[39.601, 0.617, 0.556],
[4.662, 0.175, 0.174],
[2.349, 0.156, 0.145],
[5.350, 0.181, 0.179],
[19.239, 0.455, 0.438],
[15.829, 1.015, 0.996],
[2.297, 2.269, 2.278],
[3.865, 0.468, 0.440],
[9.817, 0.674, 0.645],
[9.106, 3.916, 4.283],
[19.440, 1.872, 1.838],
[19.427, 1.858, 1.818],
[0.894, 0.835, 0.847],
[0.088, 0.059, 0.060],
[0.048, 0.027, 0.030],
[0.046, 0.022, 0.024],
[0.180, 0.137, 0.124],
[0.037, 0.011, 0.010],
[0.025, 0.008, 0.009],
[0.015, 0.002, 0.002]
]
}
]

View File

@ -0,0 +1,85 @@
[
{
"system": "2019-07-20 19.9",
"system_full": "ClickHouse 19.9.5.36 2019-07-20(adaptive)",
"version": "19.9.5.36",
"kind": "adaptive",
"comments": "",
"result":
[
[0.034, 0.003, 0.003],
[0.014, 0.002, 0.002],
[0.017, 0.003, 0.003],
[0.014, 0.002, 0.002],
[0.015, 0.002, 0.002],
[0.017, 0.003, 0.003],
[0.016, 0.001, 0.001],
[0.120, 0.024, 0.027],
[0.021, 0.008, 0.008],
[0.016, 0.001, 0.001],
[1.225, 0.331, 0.331],
[0.620, 0.301, 0.296],
[0.038, 0.003, 0.003],
[0.034, 0.013, 0.013],
[0.125, 0.108, 0.100],
[3.432, 0.095, 0.090],
[2.993, 0.667, 0.673],
[2.271, 0.060, 0.059],
[1.282, 0.047, 0.051],
[4.467, 0.201, 0.185],
[4.258, 0.167, 0.157],
[1.845, 0.180, 0.180],
[63.456, 2.040, 2.008],
[42.482, 1.578, 1.566],
[3.485, 0.714, 0.717],
[0.789, 0.176, 0.176],
[0.120, 0.063, 0.061],
[3.680, 0.092, 0.084],
[0.060, 0.010, 0.010],
[0.053, 0.008, 0.007],
[0.429, 0.060, 0.054],
[1.646, 0.042, 0.045],
[1.659, 0.105, 0.106],
[2.557, 0.207, 0.195],
[0.072, 0.041, 0.043],
[0.041, 0.008, 0.008],
[2.012, 0.439, 0.424],
[2.021, 0.486, 0.480],
[1.054, 0.126, 0.124],
[1.666, 0.158, 0.167],
[2.565, 0.437, 0.392],
[3.795, 0.497, 0.529],
[2.355, 0.524, 0.517],
[1.191, 0.540, 0.538],
[4.245, 1.306, 1.298],
[3.654, 0.728, 0.717],
[7.948, 2.782, 2.789],
[0.893, 0.061, 0.027],
[19.518, 0.425, 0.408],
[21.473, 0.524, 0.513],
[40.168, 1.177, 1.137],
[39.602, 0.574, 0.588],
[4.663, 0.169, 0.176],
[2.346, 0.155, 0.144],
[5.320, 0.193, 0.176],
[19.215, 0.437, 0.418],
[15.836, 0.996, 0.982],
[2.297, 2.258, 2.274],
[3.824, 0.448, 0.454],
[9.803, 0.657, 0.632],
[9.051, 3.826, 3.919],
[19.430, 1.820, 1.798],
[19.387, 1.847, 1.820],
[0.885, 0.815, 0.823],
[0.089, 0.065, 0.057],
[0.056, 0.028, 0.033],
[0.041, 0.022, 0.022],
[0.199, 0.128, 0.120],
[0.036, 0.010, 0.010],
[0.025, 0.008, 0.009],
[0.017, 0.002, 0.002]
]
}
]

View File

@ -0,0 +1,85 @@
[
{
"system": "2019-07-12 19.10",
"system_full": "ClickHouse 19.10.1.5 2019-07-12(adaptive)",
"version": "19.10.1.5",
"type": "adaptive",
"comments": "",
"result":
[
[0.045, 0.003, 0.003],
[0.017, 0.001, 0.001],
[0.018, 0.003, 0.003],
[0.023, 0.002, 0.001],
[0.016, 0.002, 0.002],
[0.021, 0.003, 0.003],
[0.017, 0.001, 0.001],
[0.062, 0.024, 0.023],
[0.021, 0.008, 0.008],
[0.011, 0.001, 0.001],
[1.159, 0.338, 0.334],
[0.620, 0.323, 0.307],
[0.021, 0.002, 0.001],
[0.009, 0.001, 0.001],
[0.017, 0.004, 0.004],
[3.646, 0.094, 0.089],
[2.997, 0.679, 0.667],
[2.240, 0.060, 0.059],
[1.177, 0.060, 0.056],
[4.103, 0.224, 0.194],
[3.934, 0.167, 0.171],
[1.754, 0.188, 0.177],
[63.474, 2.051, 2.021],
[42.421, 1.550, 1.518],
[3.482, 0.725, 0.731],
[0.683, 0.161, 0.136],
[0.087, 0.058, 0.055],
[3.057, 0.061, 0.055],
[0.095, 0.010, 0.010],
[0.062, 0.008, 0.007],
[0.425, 0.062, 0.065],
[1.645, 0.047, 0.045],
[1.655, 0.117, 0.113],
[2.541, 0.220, 0.198],
[0.058, 0.044, 0.044],
[0.019, 0.008, 0.008],
[2.034, 0.434, 0.420],
[2.035, 0.485, 0.484],
[1.036, 0.116, 0.118],
[1.672, 0.150, 0.148],
[2.584, 0.397, 0.385],
[3.829, 0.512, 0.488],
[2.373, 0.518, 0.504],
[1.191, 0.546, 0.539],
[4.394, 1.359, 1.319],
[3.649, 0.754, 0.735],
[7.906, 2.846, 2.808],
[0.906, 0.044, 0.027],
[19.556, 0.441, 0.410],
[21.468, 0.529, 0.521],
[40.145, 1.194, 1.165],
[39.573, 0.559, 0.529],
[4.652, 0.180, 0.171],
[2.321, 0.154, 0.147],
[5.312, 0.188, 0.178],
[19.213, 0.444, 0.424],
[15.806, 1.006, 0.981],
[2.265, 2.257, 2.274],
[3.826, 0.470, 0.449],
[9.797, 0.666, 0.639],
[9.059, 3.902, 3.855],
[19.428, 1.865, 1.804],
[19.377, 1.843, 1.815],
[0.885, 0.828, 0.828],
[0.090, 0.061, 0.061],
[0.052, 0.029, 0.027],
[0.045, 0.021, 0.022],
[0.195, 0.129, 0.137],
[0.035, 0.011, 0.011],
[0.027, 0.009, 0.008],
[0.013, 0.002, 0.002]
]
}
]

View File

@ -0,0 +1,85 @@
[
{
"system": "2019-12-04 19.11",
"system_full": "ClickHouse 19.11.14.1 2019-12-04(adaptive)",
"version": "19.11.14.1",
"kind": "adaptive",
"comments": "",
"result":
[
[0.037, 0.003, 0.003],
[0.018, 0.001, 0.001],
[0.019, 0.003, 0.003],
[0.017, 0.002, 0.001],
[0.015, 0.002, 0.002],
[0.020, 0.003, 0.003],
[0.018, 0.001, 0.001],
[0.066, 0.025, 0.028],
[0.020, 0.008, 0.008],
[0.011, 0.001, 0.001],
[1.138, 0.350, 0.340],
[0.580, 0.309, 0.305],
[0.034, 0.003, 0.004],
[0.031, 0.014, 0.013],
[0.137, 0.103, 0.107],
[3.421, 0.099, 0.090],
[3.002, 0.653, 0.647],
[2.253, 0.064, 0.060],
[1.258, 0.056, 0.052],
[4.436, 0.230, 0.208],
[4.214, 0.163, 0.176],
[1.854, 0.208, 0.208],
[63.371, 2.164, 2.111],
[42.444, 1.585, 1.551],
[3.448, 0.708, 0.699],
[0.793, 0.154, 0.169],
[0.104, 0.081, 0.075],
[3.178, 0.080, 0.091],
[0.039, 0.010, 0.010],
[0.060, 0.007, 0.007],
[0.427, 0.073, 0.071],
[1.616, 0.046, 0.047],
[1.654, 0.098, 0.096],
[2.561, 0.211, 0.211],
[0.064, 0.048, 0.048],
[0.019, 0.008, 0.007],
[1.989, 0.396, 0.394],
[1.991, 0.456, 0.453],
[1.020, 0.132, 0.129],
[1.640, 0.168, 0.161],
[2.523, 0.430, 0.406],
[3.826, 0.511, 0.505],
[2.356, 0.507, 0.509],
[1.177, 0.538, 0.534],
[4.299, 1.294, 1.286],
[3.662, 0.732, 0.704],
[7.885, 2.777, 2.784],
[0.911, 0.053, 0.027],
[19.526, 0.431, 0.419],
[21.478, 0.557, 0.536],
[40.140, 1.248, 1.209],
[39.497, 0.589, 0.542],
[4.644, 0.195, 0.187],
[2.302, 0.167, 0.164],
[5.303, 0.203, 0.196],
[19.169, 0.439, 0.425],
[15.754, 0.803, 0.777],
[2.251, 2.236, 2.251],
[3.831, 0.475, 0.454],
[9.802, 0.666, 0.656],
[9.119, 3.820, 3.843],
[19.443, 1.864, 1.825],
[19.451, 1.848, 1.819],
[0.854, 0.808, 0.799],
[0.153, 0.119, 0.111],
[0.071, 0.048, 0.045],
[0.065, 0.037, 0.035],
[0.319, 0.253, 0.247],
[0.051, 0.019, 0.018],
[0.033, 0.013, 0.014],
[0.013, 0.002, 0.002]
]
}
]

View File

@ -0,0 +1,85 @@
[
{
"system": "2019-11-06 19.13",
"system_full": "ClickHouse 19.13.7.57 2019-11-06(adaptive)",
"version": "19.13.7.57",
"kind": "adaptive",
"comments": "",
"result":
[
[0.032, 0.003, 0.003],
[0.014, 0.002, 0.002],
[0.019, 0.003, 0.003],
[0.017, 0.002, 0.002],
[0.017, 0.002, 0.002],
[0.018, 0.003, 0.003],
[0.018, 0.001, 0.001],
[0.065, 0.025, 0.028],
[0.022, 0.009, 0.009],
[0.013, 0.002, 0.002],
[1.218, 0.344, 0.339],
[0.597, 0.317, 0.318],
[0.033, 0.003, 0.003],
[0.031, 0.013, 0.017],
[0.141, 0.106, 0.096],
[3.401, 0.092, 0.087],
[3.037, 0.748, 0.740],
[2.263, 0.059, 0.057],
[1.277, 0.045, 0.057],
[4.439, 0.223, 0.213],
[4.197, 0.178, 0.174],
[1.817, 0.223, 0.195],
[63.350, 2.157, 2.109],
[42.422, 1.557, 1.551],
[3.545, 0.808, 0.798],
[0.791, 0.185, 0.154],
[0.110, 0.082, 0.079],
[3.174, 0.093, 0.106],
[0.047, 0.030, 0.031],
[0.023, 0.008, 0.008],
[0.306, 0.069, 0.067],
[1.635, 0.049, 0.047],
[1.669, 0.096, 0.096],
[2.579, 0.216, 0.207],
[0.060, 0.040, 0.043],
[0.017, 0.008, 0.008],
[2.057, 0.421, 0.403],
[2.015, 0.464, 0.458],
[1.039, 0.122, 0.127],
[1.676, 0.151, 0.144],
[2.624, 0.421, 0.394],
[3.777, 0.536, 0.508],
[2.352, 0.523, 0.494],
[1.205, 0.537, 0.532],
[4.218, 1.303, 1.273],
[3.674, 0.724, 0.714],
[7.911, 2.748, 2.734],
[0.910, 0.057, 0.029],
[19.529, 0.434, 0.415],
[21.471, 0.577, 0.527],
[40.121, 1.221, 1.191],
[39.482, 0.566, 0.544],
[4.644, 0.191, 0.191],
[2.312, 0.168, 0.159],
[5.286, 0.204, 0.199],
[19.174, 0.449, 0.431],
[15.773, 0.772, 0.755],
[2.270, 2.254, 2.254],
[3.855, 0.469, 0.455],
[9.782, 0.667, 0.640],
[9.127, 3.834, 3.826],
[19.407, 1.852, 1.794],
[19.405, 1.838, 1.803],
[0.850, 0.803, 0.799],
[0.146, 0.118, 0.111],
[0.070, 0.048, 0.050],
[0.067, 0.038, 0.035],
[0.318, 0.238, 0.256],
[0.058, 0.019, 0.018],
[0.034, 0.013, 0.013],
[0.013, 0.003, 0.005]
]
}
]

View File

@ -0,0 +1,85 @@
[
{
"system": "2020-07-21 19.14",
"system_full": "ClickHouse 19.14.13.4 2020-07-21(adaptive)",
"version": "19.14.13.4",
"kind": "adaptive",
"comments": "",
"result":
[
[0.037, 0.003, 0.003],
[0.015, 0.002, 0.002],
[0.021, 0.003, 0.003],
[0.016, 0.002, 0.002],
[0.016, 0.002, 0.002],
[0.015, 0.003, 0.003],
[0.018, 0.002, 0.002],
[0.071, 0.040, 0.030],
[0.022, 0.009, 0.009],
[0.014, 0.002, 0.002],
[1.241, 0.353, 0.357],
[0.550, 0.346, 0.341],
[0.034, 0.004, 0.003],
[0.031, 0.019, 0.018],
[0.124, 0.101, 0.106],
[3.424, 0.101, 0.095],
[3.021, 0.745, 0.742],
[2.268, 0.057, 0.055],
[1.266, 0.052, 0.051],
[4.452, 0.219, 0.226],
[4.183, 0.188, 0.198],
[1.823, 0.227, 0.221],
[63.392, 2.282, 2.249],
[42.447, 1.526, 1.529],
[3.546, 0.809, 0.813],
[0.763, 0.173, 0.141],
[0.119, 0.079, 0.094],
[3.172, 0.100, 0.085],
[0.025, 0.006, 0.006],
[0.026, 0.009, 0.008],
[0.365, 0.027, 0.026],
[1.690, 0.034, 0.032],
[1.668, 0.090, 0.089],
[2.592, 0.207, 0.211],
[0.027, 0.011, 0.011],
[0.018, 0.009, 0.009],
[2.114, 0.410, 0.403],
[2.003, 0.457, 0.444],
[1.025, 0.130, 0.131],
[1.645, 0.160, 0.156],
[2.559, 0.463, 0.454],
[3.838, 0.579, 0.570],
[2.380, 0.552, 0.549],
[1.202, 0.600, 0.583],
[4.286, 1.424, 1.415],
[3.680, 0.808, 0.823],
[7.918, 3.030, 3.035],
[0.906, 0.044, 0.044],
[19.539, 0.495, 0.483],
[21.464, 0.603, 0.562],
[40.117, 1.299, 1.279],
[39.494, 0.622, 0.607],
[4.644, 0.209, 0.216],
[2.249, 0.165, 0.183],
[5.262, 0.223, 0.218],
[19.142, 0.461, 0.449],
[15.763, 0.824, 0.828],
[1.168, 1.135, 1.139],
[3.836, 0.492, 0.509],
[9.800, 0.729, 0.705],
[9.106, 4.009, 4.031],
[19.505, 1.972, 1.949],
[19.475, 2.047, 1.972],
[0.858, 0.846, 0.825],
[0.163, 0.122, 0.117],
[0.067, 0.048, 0.049],
[0.072, 0.043, 0.039],
[0.336, 0.262, 0.277],
[0.050, 0.027, 0.018],
[0.030, 0.023, 0.012],
[0.013, 0.003, 0.003]
]
}
]

View File

@ -0,0 +1,85 @@
[
{
"system": "2019-12-29 19.15",
"system_full": "ClickHouse 19.15.7.30 2019-12-29(adaptive)",
"version": "19.15.7.30",
"kind": "adaptive",
"comments": "",
"result":
[
[0.036, 0.003, 0.003],
[0.014, 0.002, 0.002],
[0.016, 0.003, 0.003],
[0.016, 0.002, 0.002],
[0.015, 0.002, 0.002],
[0.017, 0.003, 0.003],
[0.016, 0.002, 0.002],
[0.067, 0.039, 0.039],
[0.021, 0.008, 0.008],
[0.011, 0.002, 0.002],
[1.241, 0.346, 0.359],
[0.572, 0.336, 0.340],
[0.034, 0.003, 0.003],
[0.032, 0.019, 0.014],
[0.130, 0.102, 0.098],
[3.424, 0.092, 0.092],
[3.032, 0.737, 0.746],
[2.283, 0.055, 0.055],
[1.275, 0.049, 0.049],
[4.531, 0.222, 0.216],
[4.224, 0.190, 0.174],
[1.808, 0.212, 0.211],
[63.378, 2.088, 2.059],
[42.433, 1.451, 1.445],
[3.535, 0.788, 0.792],
[0.783, 0.166, 0.146],
[0.117, 0.075, 0.083],
[3.194, 0.081, 0.091],
[0.025, 0.005, 0.005],
[0.025, 0.008, 0.008],
[0.400, 0.022, 0.023],
[1.716, 0.032, 0.032],
[1.684, 0.082, 0.088],
[2.604, 0.201, 0.203],
[0.029, 0.014, 0.015],
[0.019, 0.008, 0.009],
[2.128, 0.415, 0.408],
[2.008, 0.445, 0.442],
[1.031, 0.119, 0.119],
[1.673, 0.149, 0.143],
[2.623, 0.468, 0.491],
[3.772, 0.566, 0.556],
[2.345, 0.545, 0.540],
[1.198, 0.581, 0.604],
[4.245, 1.422, 1.421],
[3.641, 0.797, 0.799],
[7.931, 3.072, 3.036],
[0.899, 0.046, 0.037],
[19.526, 0.453, 0.454],
[21.447, 0.556, 0.583],
[39.978, 1.279, 1.248],
[39.505, 0.567, 0.563],
[4.637, 0.205, 0.204],
[2.262, 0.170, 0.170],
[5.273, 0.211, 0.214],
[19.142, 0.448, 0.435],
[15.800, 0.780, 0.782],
[1.154, 1.138, 1.134],
[3.820, 0.508, 0.524],
[9.790, 0.722, 0.689],
[9.068, 4.062, 4.036],
[19.494, 2.033, 1.911],
[19.512, 2.044, 1.967],
[0.860, 0.839, 0.830],
[0.151, 0.129, 0.118],
[0.068, 0.048, 0.053],
[0.068, 0.043, 0.037],
[0.312, 0.251, 0.273],
[0.051, 0.023, 0.026],
[0.034, 0.024, 0.022],
[0.014, 0.002, 0.003]
]
}
]

Some files were not shown because too many files have changed in this diff Show More