From 7769b92316a4ee4c4e9b083ca0a66a0cab6598d2 Mon Sep 17 00:00:00 2001 From: VPolka Date: Thu, 19 Sep 2024 12:47:41 +0300 Subject: [PATCH] delete query from queryIndex if error during insert (#9231) --- ydb/core/kqp/compile_service/kqp_compile_service.cpp | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/ydb/core/kqp/compile_service/kqp_compile_service.cpp b/ydb/core/kqp/compile_service/kqp_compile_service.cpp index 5c5bc1929d10..af6d3002f1f9 100644 --- a/ydb/core/kqp/compile_service/kqp_compile_service.cpp +++ b/ydb/core/kqp/compile_service/kqp_compile_service.cpp @@ -43,6 +43,7 @@ class TKqpQueryCache { auto queryIt = QueryIndex.emplace(query, compileResult->Uid); if (!queryIt.second) { EraseByUid(compileResult->Uid); + QueryIndex.erase(query); } Y_ENSURE(queryIt.second); } @@ -782,6 +783,12 @@ class TKqpCompileService : public TActorBootstrapped { auto query = request.Query ? *request.Query : *compileResult->Query; if (compileResult) { query.UserSid = compileResult->Query->UserSid; + if (query != *compileResult->Query) { + LOG_WARN_S(ctx, NKikimrServices::KQP_COMPILE_SERVICE, "queryId in recompile request and queryId in cache are different" + << ", queryId in request: " << query.SerializeToString() + << ", queryId in cache: " << compileResult->Query->SerializeToString() + ); + } } TKqpCompileRequest compileRequest(ev->Sender, request.Uid, query, compileSettings, request.UserToken, dbCounters, request.GUCSettings, request.ApplicationName,