aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authoralexvru <alexvru@ydb.tech>2023-09-29 15:43:49 +0300
committeralexvru <alexvru@ydb.tech>2023-09-29 16:07:45 +0300
commitcc28e03be1ce27e4e65a4ce9469227a0010ee582 (patch)
treea47673d27ce2b7d8b2a9cc032715b1ab5ab281b6
parentd4dc18a29171fae83be9ebed56b88e13c5ed51a3 (diff)
downloadydb-cc28e03be1ce27e4e65a4ce9469227a0010ee582.tar.gz
Correct passing of Decommission flag KIKIMR-14867
-rw-r--r--ydb/core/blobstorage/dsproxy/dsproxy_indexrestoreget.cpp4
-rw-r--r--ydb/core/blobstorage/dsproxy/dsproxy_multiget.cpp3
-rw-r--r--ydb/core/blobstorage/dsproxy/dsproxy_range.cpp1
3 files changed, 8 insertions, 0 deletions
diff --git a/ydb/core/blobstorage/dsproxy/dsproxy_indexrestoreget.cpp b/ydb/core/blobstorage/dsproxy/dsproxy_indexrestoreget.cpp
index e2a14e45e60..03f224c2ddb 100644
--- a/ydb/core/blobstorage/dsproxy/dsproxy_indexrestoreget.cpp
+++ b/ydb/core/blobstorage/dsproxy/dsproxy_indexrestoreget.cpp
@@ -17,6 +17,7 @@ class TBlobStorageGroupIndexRestoreGetRequest
TArrayHolder<TEvBlobStorage::TEvGet::TQuery> Queries;
const TInstant Deadline;
const bool IsInternal;
+ const bool Decommission;
const std::optional<TEvBlobStorage::TEvGet::TForceBlockTabletData> ForceBlockTabletData;
THashMap<ui64, TGroupQuorumTracker> QuorumTracker;
@@ -174,6 +175,7 @@ class TBlobStorageGroupIndexRestoreGetRequest
std::unique_ptr<TEvBlobStorage::TEvGet> get(new TEvBlobStorage::TEvGet(
Queries[idx].Id, 0, 0, Deadline,
GetHandleClass, true));
+ get->Decommission = Decommission;
A_LOG_DEBUG_S("DSPI12", "OnEnoughVGetResults"
<< " recoverable blob, id# " << Queries[idx].Id.ToString()
<< " BlobStatus# " << DumpBlobStatus(idx)
@@ -247,6 +249,7 @@ class TBlobStorageGroupIndexRestoreGetRequest
auto ev = std::make_unique<TEvBlobStorage::TEvGet>(Queries, QuerySize, Deadline, GetHandleClass,
true /*mustRestoreFirst*/, true /*isIndexOnly*/, std::nullopt /*forceBlockTabletData*/, IsInternal);
ev->RestartCounter = counter;
+ ev->Decommission = Decommission;
return ev;
}
@@ -275,6 +278,7 @@ public:
, Queries(ev->Queries.Release())
, Deadline(ev->Deadline)
, IsInternal(ev->IsInternal)
+ , Decommission(ev->Decommission)
, ForceBlockTabletData(ev->ForceBlockTabletData)
, VGetsInFlight(0)
, StartTime(now)
diff --git a/ydb/core/blobstorage/dsproxy/dsproxy_multiget.cpp b/ydb/core/blobstorage/dsproxy/dsproxy_multiget.cpp
index 6500221d26e..82284ade8f5 100644
--- a/ydb/core/blobstorage/dsproxy/dsproxy_multiget.cpp
+++ b/ydb/core/blobstorage/dsproxy/dsproxy_multiget.cpp
@@ -25,6 +25,7 @@ class TBlobStorageGroupMultiGetRequest : public TBlobStorageGroupRequestActor<TB
const TInstant Deadline;
const bool IsInternal;
const bool PhantomCheck;
+ const bool Decommission;
TArrayHolder<TEvBlobStorage::TEvGetResult::TResponse> Responses;
const TInstant StartTime;
@@ -107,6 +108,7 @@ public:
, Deadline(ev->Deadline)
, IsInternal(ev->IsInternal)
, PhantomCheck(ev->PhantomCheck)
+ , Decommission(ev->Decommission)
, Responses(new TEvBlobStorage::TEvGetResult::TResponse[QuerySize])
, StartTime(now)
, MustRestoreFirst(ev->MustRestoreFirst)
@@ -127,6 +129,7 @@ public:
ev->IsInternal = IsInternal;
ev->ReaderTabletData = ReaderTabletData;
ev->PhantomCheck = PhantomCheck;
+ ev->Decommission = Decommission;
PendingGets.emplace_back(std::move(ev), cookie);
}
diff --git a/ydb/core/blobstorage/dsproxy/dsproxy_range.cpp b/ydb/core/blobstorage/dsproxy/dsproxy_range.cpp
index a3925bf52c1..b5c0d75ff9e 100644
--- a/ydb/core/blobstorage/dsproxy/dsproxy_range.cpp
+++ b/ydb/core/blobstorage/dsproxy/dsproxy_range.cpp
@@ -245,6 +245,7 @@ class TBlobStorageGroupRangeRequest : public TBlobStorageGroupRequestActor<TBlob
auto get = std::make_unique<TEvBlobStorage::TEvGet>(queries, queryCount, Deadline,
NKikimrBlobStorage::EGetHandleClass::FastRead, MustRestoreFirst, IsIndexOnly, TEvBlobStorage::TEvGet::TForceBlockTabletData(TabletId, ForceBlockedGeneration));
get->IsInternal = true;
+ get->Decommission = Decommission;
A_LOG_DEBUG_S("DSR08", "sending TEvGet# " << get->ToString());