diff --git a/ydb/core/keyvalue/channel_balancer.h b/ydb/core/keyvalue/channel_balancer.h index ca013400f9c3..378c22434d52 100644 --- a/ydb/core/keyvalue/channel_balancer.h +++ b/ydb/core/keyvalue/channel_balancer.h @@ -114,7 +114,7 @@ namespace NKikimr::NKeyValue { const size_t index = (LatencyQueue.size() - 1) * 99 / 100; const TDuration perc = latencies[index]; weight = MeanExpectedLatency.GetValue() * weight / Max(perc, TDuration::MilliSeconds(1)).GetValue(); - Y_DEBUG_ABORT_UNLESS(weight); + //Y_DEBUG_ABORT_UNLESS(weight); if (!weight) { weight = 1; } diff --git a/ydb/core/keyvalue/keyvalue_state.cpp b/ydb/core/keyvalue/keyvalue_state.cpp index 140146b04b05..8135c86c2a2b 100644 --- a/ydb/core/keyvalue/keyvalue_state.cpp +++ b/ydb/core/keyvalue/keyvalue_state.cpp @@ -634,6 +634,9 @@ void TKeyValueState::InitExecute(ui64 tabletId, TActorId keyValueActorId, ui32 e } THelpers::DbEraseCollect(db, ctx); + if (IsEmptyDbStart) { + THelpers::DbUpdateState(StoredState, db, ctx); + } // corner case, if no CollectGarbage events were sent if (InitialCollectsSent == 0) { diff --git a/ydb/core/keyvalue/keyvalue_storage_request.cpp b/ydb/core/keyvalue/keyvalue_storage_request.cpp index 3029aff65985..f725b9f459b0 100644 --- a/ydb/core/keyvalue/keyvalue_storage_request.cpp +++ b/ydb/core/keyvalue/keyvalue_storage_request.cpp @@ -341,6 +341,11 @@ class TKeyValueStorageRequest : public TActorBootstrappedStat.GroupReadIops[std::make_pair(response.Id.Channel(), groupId)] += 1; // FIXME: count distinct blobs? read.Value.Write(readItem.ValueOffset, std::move(response.Buffer)); } else { + Y_VERIFY_DEBUG_S(response.Status != NKikimrProto::NODATA, "NODATA received for TEvGet" + << " TabletId# " << TabletInfo->TabletID + << " Id# " << response.Id + << " Key# " << read.Key); + TStringStream err; if (read.Message.size()) { err << read.Message << Endl;