From 09ea79aaf7955a9db36126e9a5f18e93b98704ec Mon Sep 17 00:00:00 2001 From: Alexey Milovidov Date: Sun, 9 Apr 2023 03:04:26 +0200 Subject: [PATCH] Add support for {server_uuid} macro --- programs/keeper/Keeper.cpp | 1 - programs/server/Server.cpp | 2 +- src/Common/Exception.h | 1 - src/Common/Macros.cpp | 12 +++++++++++- src/Daemon/BaseDaemon.h | 1 - src/Dictionaries/MongoDBDictionarySource.cpp | 1 - src/Disks/ObjectStorages/S3/registerDiskS3.cpp | 9 +++------ src/IO/HTTPCommon.cpp | 2 -- src/IO/ReadWriteBufferFromHTTP.h | 1 - src/Processors/Sources/MongoDBSource.cpp | 1 - src/Storages/StorageMongoDB.cpp | 1 - 11 files changed, 15 insertions(+), 17 deletions(-) diff --git a/programs/keeper/Keeper.cpp b/programs/keeper/Keeper.cpp index 266b363eb47..3853c955171 100644 --- a/programs/keeper/Keeper.cpp +++ b/programs/keeper/Keeper.cpp @@ -17,7 +17,6 @@ #include #include #include -#include #include #include #include diff --git a/programs/server/Server.cpp b/programs/server/Server.cpp index 9ef9f704f61..164e1ce14e5 100644 --- a/programs/server/Server.cpp +++ b/programs/server/Server.cpp @@ -981,7 +981,7 @@ try StatusFile status{path / "status", StatusFile::write_full_info}; - DB::ServerUUID::load(path / "uuid", log); + ServerUUID::load(path / "uuid", log); /// Try to increase limit on number of open files. { diff --git a/src/Common/Exception.h b/src/Common/Exception.h index 8e50c1114f4..170e0d32b3c 100644 --- a/src/Common/Exception.h +++ b/src/Common/Exception.h @@ -4,7 +4,6 @@ #include #include -#include #include #include diff --git a/src/Common/Macros.cpp b/src/Common/Macros.cpp index e5d4be446c1..18e65bbaede 100644 --- a/src/Common/Macros.cpp +++ b/src/Common/Macros.cpp @@ -1,8 +1,9 @@ #include #include #include -#include #include +#include +#include namespace DB @@ -105,6 +106,15 @@ String Macros::expand(const String & s, res += toString(info.table_id.uuid); info.expanded_uuid = true; } + else if (macro_name == "server_uuid") + { + auto uuid = ServerUUID::get(); + if (UUIDHelpers::Nil == uuid) + throw Exception(ErrorCodes::BAD_ARGUMENTS, + "Macro {server_uuid} expanded to zero, which means the UUID is not initialized (most likely it's not a server application)"); + res += toString(uuid); + info.expanded_other = true; + } else if (info.shard && macro_name == "shard") { res += *info.shard; diff --git a/src/Daemon/BaseDaemon.h b/src/Daemon/BaseDaemon.h index d28f9403c16..f90f403364b 100644 --- a/src/Daemon/BaseDaemon.h +++ b/src/Daemon/BaseDaemon.h @@ -15,7 +15,6 @@ #include #include #include -#include #include #include #include diff --git a/src/Dictionaries/MongoDBDictionarySource.cpp b/src/Dictionaries/MongoDBDictionarySource.cpp index a9555a94304..922e1e71bbb 100644 --- a/src/Dictionaries/MongoDBDictionarySource.cpp +++ b/src/Dictionaries/MongoDBDictionarySource.cpp @@ -67,7 +67,6 @@ void registerDictionarySourceMongoDB(DictionarySourceFactory & factory) #include #include #include -#include // only after poco // naming conflict: diff --git a/src/Disks/ObjectStorages/S3/registerDiskS3.cpp b/src/Disks/ObjectStorages/S3/registerDiskS3.cpp index 1c192a0d89c..70f39d893f7 100644 --- a/src/Disks/ObjectStorages/S3/registerDiskS3.cpp +++ b/src/Disks/ObjectStorages/S3/registerDiskS3.cpp @@ -8,7 +8,6 @@ #if USE_AWS_S3 -#include #include #include @@ -19,9 +18,7 @@ #include #include #include -#include -#include #include #include @@ -87,10 +84,10 @@ public: private: static String getServerUUID() { - DB::UUID server_uuid = DB::ServerUUID::get(); - if (server_uuid == DB::UUIDHelpers::Nil) + UUID server_uuid = ServerUUID::get(); + if (server_uuid == UUIDHelpers::Nil) throw Exception(ErrorCodes::LOGICAL_ERROR, "Server UUID is not initialized"); - return DB::toString(server_uuid); + return toString(server_uuid); } }; diff --git a/src/IO/HTTPCommon.cpp b/src/IO/HTTPCommon.cpp index 551ce797757..9eabe3573f4 100644 --- a/src/IO/HTTPCommon.cpp +++ b/src/IO/HTTPCommon.cpp @@ -7,8 +7,6 @@ #include #include -#include - #include "config.h" #if USE_SSL diff --git a/src/IO/ReadWriteBufferFromHTTP.h b/src/IO/ReadWriteBufferFromHTTP.h index 784110f735e..28f7a7f600b 100644 --- a/src/IO/ReadWriteBufferFromHTTP.h +++ b/src/IO/ReadWriteBufferFromHTTP.h @@ -21,7 +21,6 @@ #include #include #include -#include #include #include #include "config.h" diff --git a/src/Processors/Sources/MongoDBSource.cpp b/src/Processors/Sources/MongoDBSource.cpp index a8bfefdf8a6..9e50cdcf6ab 100644 --- a/src/Processors/Sources/MongoDBSource.cpp +++ b/src/Processors/Sources/MongoDBSource.cpp @@ -15,7 +15,6 @@ #include #include #include -#include // only after poco // naming conflict: diff --git a/src/Storages/StorageMongoDB.cpp b/src/Storages/StorageMongoDB.cpp index 0bad4ab8bf0..63b8c2d00a1 100644 --- a/src/Storages/StorageMongoDB.cpp +++ b/src/Storages/StorageMongoDB.cpp @@ -7,7 +7,6 @@ #include #include #include -#include #include #include #include