diff options
author | Ilnaz Nizametdinov <i.nizametdinov@gmail.com> | 2022-05-05 15:46:49 +0300 |
---|---|---|
committer | Ilnaz Nizametdinov <i.nizametdinov@gmail.com> | 2022-05-05 15:46:49 +0300 |
commit | b3353587c534c52ab70463fa77473a36586dadee (patch) | |
tree | 89e728d5cce7a1475e117087d6374098f0287797 | |
parent | 94b94b39ac89e8fe7246ae427427e612d3bfcf36 (diff) | |
download | ydb-b3353587c534c52ab70463fa77473a36586dadee.tar.gz |
Do not allow empty database names KIKIMR-14852
ref:4f914e01c142bf20f4fe44f352c4f154bf9d6647
-rw-r--r-- | ydb/core/grpc_services/grpc_request_proxy.cpp | 7 |
1 files changed, 7 insertions, 0 deletions
diff --git a/ydb/core/grpc_services/grpc_request_proxy.cpp b/ydb/core/grpc_services/grpc_request_proxy.cpp index 08e11d4337d..ecf019fae6b 100644 --- a/ydb/core/grpc_services/grpc_request_proxy.cpp +++ b/ydb/core/grpc_services/grpc_request_proxy.cpp @@ -210,6 +210,11 @@ private: skipCheckConnectRigths = true; } } + if (databaseName.empty()) { + Counters->IncDatabaseUnavailableCounter(); + requestBaseCtx->ReplyUnauthenticated("Empty database name"); + return; + } auto it = Databases.find(databaseName); if (it != Databases.end() && it->second.IsDatabaseReady()) { database = &it->second; @@ -320,6 +325,8 @@ void TGRpcRequestProxyImpl::Bootstrap(const TActorContext& ctx) { InitializeGRpcProxyDbCountersRegistry(ctx.ActorSystem()); RootDatabase = DatabaseFromDomain(); + Y_VERIFY(!RootDatabase.empty()); + TDatabaseInfo& database = Databases[RootDatabase]; database.DatabaseType = TDatabaseInfo::TDatabaseType::Root; database.State = NKikimrTenantPool::EState::TENANT_OK; |