Skip to content

Commit f5beef5

Browse files
authored
Revert "Support arbitrary chain set in huge blob keeper heap (#11566)" (#11891)
1 parent 663d308 commit f5beef5

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

44 files changed

+637
-521
lines changed

ydb/core/blobstorage/backpressure/ut_client/skeleton_front_mock.h

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -150,7 +150,7 @@ class TSkeletonFrontMockActor : public TActorBootstrapped<TSkeletonFrontMockActo
150150
settings->SetWriteSpeedBps(60e6);
151151
settings->SetReadBlockSize(4096);
152152
settings->SetWriteBlockSize(4096);
153-
settings->SetMinHugeBlobInBytes(512 << 10);
153+
settings->SetMinREALHugeBlobInBytes(512 << 10);
154154
}
155155

156156
STRICT_STFUNC(StateFunc, {

ydb/core/blobstorage/dsproxy/dsproxy.h

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -30,7 +30,7 @@ LWTRACE_USING(BLOBSTORAGE_PROVIDER);
3030
constexpr ui32 TypicalPartsInBlob = 6;
3131
constexpr ui32 TypicalDisksInSubring = 8;
3232

33-
constexpr ui32 MaxBatchedPutSize = 64 * 1024 - 512 - 5; // (MinHugeBlobInBytes - 1 - TDiskBlob::HugeBlobOverhead) for ssd and nvme
33+
constexpr ui32 MaxBatchedPutSize = 64 * 1024 - 512 - 5; // (MinREALHugeBlobInBytes - 1 - TDiskBlob::HugeBlobOverhead) for ssd and nvme
3434

3535
const TDuration ProxyConfigurationTimeout = TDuration::Seconds(20);
3636
const ui32 ProxyRetryConfigurationInitialTimeout = 200;

ydb/core/blobstorage/dsproxy/dsproxy_impl.h

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -71,7 +71,7 @@ class TBlobStorageGroupProxy : public TActorBootstrapped<TBlobStorageGroupProxy>
7171
bool UseActorSystemTimeInBSQueue;
7272
bool IsLimitedKeyless = false;
7373
bool IsFullMonitoring = false; // current state of monitoring
74-
ui32 MinHugeBlobInBytes = 0;
74+
ui32 MinREALHugeBlobInBytes = 0;
7575

7676
TActorId MonActor;
7777
TIntrusivePtr<TBlobStorageGroupProxyMon> Mon;

ydb/core/blobstorage/dsproxy/dsproxy_request.cpp

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -178,12 +178,13 @@ namespace NKikimr {
178178
Send(MonActor, new TEvThroughputAddRequest(ev->Get()->HandleClass, bytes));
179179
EnableWilsonTracing(ev, Mon->PutSamplePPM);
180180

181-
Y_DEBUG_ABORT_UNLESS(MinHugeBlobInBytes);
181+
Y_DEBUG_ABORT_UNLESS(MinREALHugeBlobInBytes);
182182
const ui32 partSize = Info->Type.PartSize(ev->Get()->Id);
183183

184184
TInstant now = TActivationContext::Now();
185185

186-
if (Controls.EnablePutBatching.Update(now) && partSize < MinHugeBlobInBytes && partSize <= MaxBatchedPutSize) {
186+
if (Controls.EnablePutBatching.Update(now) && partSize < MinREALHugeBlobInBytes &&
187+
partSize <= MaxBatchedPutSize) {
187188
NKikimrBlobStorage::EPutHandleClass handleClass = ev->Get()->HandleClass;
188189
TEvBlobStorage::TEvPut::ETactic tactic = ev->Get()->Tactic;
189190
Y_ABORT_UNLESS((ui64)handleClass <= PutHandleClassCount);

ydb/core/blobstorage/dsproxy/dsproxy_state.cpp

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -208,15 +208,15 @@ namespace NKikimr {
208208
Y_ABORT_UNLESS(Topology);
209209
Sessions->QueueConnectUpdate(Topology->GetOrderNumber(msg->VDiskId), msg->QueueId, msg->IsConnected,
210210
msg->ExtraBlockChecksSupport, msg->CostModel, *Topology);
211-
MinHugeBlobInBytes = Sessions->GetMinHugeBlobInBytes();
211+
MinREALHugeBlobInBytes = Sessions->GetMinREALHugeBlobInBytes();
212212
if (msg->IsConnected && (CurrentStateFunc() == &TThis::StateEstablishingSessions ||
213213
CurrentStateFunc() == &TThis::StateEstablishingSessionsTimeout)) {
214214
SwitchToWorkWhenGoodToGo();
215215
} else if (!msg->IsConnected && CurrentStateFunc() == &TThis::StateWork && !Sessions->GoodToGo(*Topology, false)) {
216216
SetStateEstablishingSessions();
217217
}
218218

219-
Y_DEBUG_ABORT_UNLESS(CurrentStateFunc() != &TThis::StateWork || MinHugeBlobInBytes);
219+
Y_DEBUG_ABORT_UNLESS(CurrentStateFunc() != &TThis::StateWork || MinREALHugeBlobInBytes);
220220

221221
if (const ui32 prev = std::exchange(NumUnconnectedDisks, Sessions->GetNumUnconnectedDisks()); prev != NumUnconnectedDisks) {
222222
NodeMon->IncNumUnconnected(NumUnconnectedDisks);

ydb/core/blobstorage/dsproxy/group_sessions.cpp

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -188,8 +188,8 @@ void TGroupSessions::QueueConnectUpdate(ui32 orderNumber, NKikimrBlobStorage::EV
188188
}
189189
}
190190

191-
ui32 TGroupSessions::GetMinHugeBlobInBytes() const {
192-
return GroupQueues->CostModel ? GroupQueues->CostModel->MinHugeBlobInBytes : 0;
191+
ui32 TGroupSessions::GetMinREALHugeBlobInBytes() const {
192+
return GroupQueues->CostModel ? GroupQueues->CostModel->MinREALHugeBlobInBytes : 0;
193193
}
194194

195195
ui32 TGroupSessions::GetNumUnconnectedDisks() {

ydb/core/blobstorage/dsproxy/group_sessions.h

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -210,7 +210,7 @@ namespace NKikimr {
210210
void QueueConnectUpdate(ui32 orderNumber, NKikimrBlobStorage::EVDiskQueueId queueId, bool connected,
211211
bool extraBlockChecksSupport, std::shared_ptr<const TCostModel> costModel, const TBlobStorageGroupInfo::TTopology& topology);
212212
ui32 GetNumUnconnectedDisks();
213-
ui32 GetMinHugeBlobInBytes() const;
213+
ui32 GetMinREALHugeBlobInBytes() const;
214214
};
215215

216216
struct TEvRequestProxySessionsState : TEventLocal<TEvRequestProxySessionsState, TEvBlobStorage::EvRequestProxySessionsState>

ydb/core/blobstorage/ut_vdisk/lib/helpers.cpp

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -394,7 +394,7 @@ class TManyMultiPuts : public TActorBootstrapped<TManyMultiPuts> {
394394
bool Started = false;
395395
// how many deadline statuses we got
396396
ui64 RequestDeadlines = 0;
397-
ui32 MinHugeBlobInBytes = 0;
397+
ui32 MinREALHugeBlobInBytes = 0;
398398

399399
ui64 LastBatchSize = 0;
400400

@@ -413,8 +413,8 @@ class TManyMultiPuts : public TActorBootstrapped<TManyMultiPuts> {
413413
void Handle(TEvProxyQueueState::TPtr& ev, const TActorContext& ctx) {
414414
if (ev->Get()->IsConnected && !Started) {
415415
// put logo blob
416-
MinHugeBlobInBytes = ev->Get()->CostModel->MinHugeBlobInBytes;
417-
Y_ABORT_UNLESS(MinHugeBlobInBytes);
416+
MinREALHugeBlobInBytes = ev->Get()->CostModel->MinREALHugeBlobInBytes;
417+
Y_ABORT_UNLESS(MinREALHugeBlobInBytes);
418418
SendPut(ctx);
419419
Started = true;
420420
}
@@ -485,12 +485,12 @@ class TManyMultiPuts : public TActorBootstrapped<TManyMultiPuts> {
485485
Y_ABORT_UNLESS(status == NKikimrProto::OK || noTimeout && status == NKikimrProto::DEADLINE,
486486
"Event# %s", ev->Get()->ToString().data());
487487

488-
Y_ABORT_UNLESS(MinHugeBlobInBytes);
488+
Y_ABORT_UNLESS(MinREALHugeBlobInBytes);
489489

490490
switch (status) {
491491
case NKikimrProto::OK:
492492
for (auto &item : record.GetItems()) {
493-
Y_ABORT_UNLESS(item.GetStatus() == (MsgData.size() < MinHugeBlobInBytes ? NKikimrProto::OK : NKikimrProto::ERROR));
493+
Y_ABORT_UNLESS(item.GetStatus() == (MsgData.size() < MinREALHugeBlobInBytes ? NKikimrProto::OK : NKikimrProto::ERROR));
494494
}
495495
break;
496496
case NKikimrProto::DEADLINE:

ydb/core/blobstorage/ut_vdisk/lib/test_huge.cpp

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -137,6 +137,7 @@ class THugeModuleRecoveryActor : public TActorBootstrapped<THugeModuleRecoveryAc
137137

138138
bool InitHugeBlobKeeper(const TActorContext &ctx, const TStartingPoints &startingPoints) {
139139
Y_UNUSED(ctx);
140+
const ui32 oldMinHugeBlobInBytes = 64 << 10;
140141
const ui32 milestoneHugeBlobInBytes = 64 << 10;
141142
const ui32 maxBlobInBytes = 128 << 10;
142143
auto logFunc = [] (const TString) { /* empty */ };
@@ -149,6 +150,7 @@ class THugeModuleRecoveryActor : public TActorBootstrapped<THugeModuleRecoveryAc
149150
HmCtx->PDiskCtx->Dsk->ChunkSize,
150151
HmCtx->PDiskCtx->Dsk->AppendBlockSize,
151152
HmCtx->PDiskCtx->Dsk->AppendBlockSize,
153+
oldMinHugeBlobInBytes,
152154
milestoneHugeBlobInBytes,
153155
maxBlobInBytes,
154156
HmCtx->Config->HugeBlobOverhead,
@@ -167,6 +169,7 @@ class THugeModuleRecoveryActor : public TActorBootstrapped<THugeModuleRecoveryAc
167169
HmCtx->PDiskCtx->Dsk->ChunkSize,
168170
HmCtx->PDiskCtx->Dsk->AppendBlockSize,
169171
HmCtx->PDiskCtx->Dsk->AppendBlockSize,
172+
oldMinHugeBlobInBytes,
170173
milestoneHugeBlobInBytes,
171174
maxBlobInBytes,
172175
HmCtx->Config->HugeBlobOverhead,

ydb/core/blobstorage/vdisk/balance/balancing_actor.cpp

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -142,7 +142,7 @@ namespace NBalancing {
142142

143143
const auto& key = It.GetCurKey().LogoBlobID();
144144

145-
if (Ctx->Cfg.BalanceOnlyHugeBlobs && !Ctx->HugeBlobCtx->IsHugeBlob(GInfo->Type, key, Ctx->MinHugeBlobInBytes)) {
145+
if (Ctx->Cfg.BalanceOnlyHugeBlobs && !Ctx->HugeBlobCtx->IsHugeBlob(GInfo->Type, key, Ctx->MinREALHugeBlobInBytes)) {
146146
// skip non huge blobs
147147
continue;
148148
}

0 commit comments

Comments
 (0)