Skip to content

Commit 4dc8bb3

Browse files
committed
issue-2725: correct issues
1 parent b5ca1b6 commit 4dc8bb3

17 files changed

+406
-451
lines changed

cloud/blockstore/libs/storage/core/config.cpp

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -491,7 +491,7 @@ TDuration MSeconds(ui32 value)
491491
xxx(VolumeProxyCacheRetryDuration, TDuration, Seconds(15) )\
492492
\
493493
xxx(UseDirectCopyRange, bool, false )\
494-
xxx(UseDirectAcqruireReleaseDiskSending, bool, false )\
494+
xxx(UseDirectAcquireReleaseDevicesSending, bool, false )\
495495
xxx(MaxShadowDiskFillBandwidth, ui32, 512 )\
496496
xxx(MaxShadowDiskFillIoDepth, ui32, 1 )\
497497
xxx(BackgroundOperationsTotalBandwidth, ui32, 1024 )\

cloud/blockstore/libs/storage/core/config.h

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -570,7 +570,7 @@ class TStorageConfig
570570
TString GetCachedDiskAgentSessionsPath() const;
571571

572572
bool GetUseDirectCopyRange() const;
573-
[[nodiscard]] bool GetUseDirectAcquireReleaseDiskSending() const;
573+
[[nodiscard]] bool GetUseDirectAcquireReleaseDevicesSending() const;
574574
ui32 GetMaxShadowDiskFillBandwidth() const;
575575
ui32 GetMaxShadowDiskFillIoDepth() const;
576576
ui32 GetBackgroundOperationsTotalBandwidth() const;

cloud/blockstore/libs/storage/core/proto_helpers.cpp

Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -444,4 +444,15 @@ ui64 GetVolumeRequestId(const TEvDiskAgent::TEvZeroDeviceBlocksRequest& request)
444444
return request.Record.GetVolumeRequestId();
445445
}
446446

447+
TString LogDevices(const TVector<NProto::TDeviceConfig>& devices)
448+
{
449+
TStringBuilder sb;
450+
sb << "( ";
451+
for (const auto& d: devices) {
452+
sb << d.GetDeviceUUID() << "@" << d.GetAgentId() << " ";
453+
}
454+
sb << ")";
455+
return sb;
456+
}
457+
447458
} // namespace NCloud::NBlockStore::NStorage

cloud/blockstore/libs/storage/core/proto_helpers.h

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -223,4 +223,5 @@ TBlockRange64 BuildRequestBlockRange(
223223
ui64 GetVolumeRequestId(const TEvDiskAgent::TEvWriteDeviceBlocksRequest& request);
224224
ui64 GetVolumeRequestId(const TEvDiskAgent::TEvZeroDeviceBlocksRequest& request);
225225

226+
TString LogDevices(const TVector<NProto::TDeviceConfig>& devices);
226227
} // namespace NCloud::NBlockStore::NStorage

cloud/blockstore/libs/storage/disk_registry/disk_registry_actor.cpp

Lines changed: 0 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -879,19 +879,6 @@ bool ToLogicalBlocks(NProto::TDeviceConfig& device, ui32 logicalBlockSize)
879879

880880
////////////////////////////////////////////////////////////////////////////////
881881

882-
TString LogDevices(const TVector<NProto::TDeviceConfig>& devices)
883-
{
884-
TStringBuilder sb;
885-
sb << "( ";
886-
for (const auto& d: devices) {
887-
sb << d.GetDeviceUUID() << "@" << d.GetAgentId() << " ";
888-
}
889-
sb << ")";
890-
return sb;
891-
}
892-
893-
////////////////////////////////////////////////////////////////////////////////
894-
895882
void TDiskRegistryActor::OnDiskAcquired(
896883
TVector<TAgentAcquireDevicesCachedRequest> sentAcquireRequests)
897884
{

cloud/blockstore/libs/storage/disk_registry/disk_registry_actor.h

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -503,6 +503,4 @@ class TDiskRegistryActor final
503503
// BLOCKSTORE_DISK_REGISTRY_COUNTER
504504

505505
bool ToLogicalBlocks(NProto::TDeviceConfig& device, ui32 logicalBlockSize);
506-
TString LogDevices(const TVector<NProto::TDeviceConfig>& devices);
507-
508506
} // namespace NCloud::NBlockStore::NStorage

cloud/blockstore/libs/storage/disk_registry/disk_registry_actor_acquire.cpp

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,7 @@
11
#include "disk_registry_actor.h"
22

33
#include <cloud/blockstore/libs/storage/api/disk_agent.h>
4+
#include <cloud/blockstore/libs/storage/core/proto_helpers.h>
45

56
#include <cloud/blockstore/libs/kikimr/events.h>
67

cloud/blockstore/libs/storage/disk_registry/disk_registry_actor_release.cpp

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,5 @@
11
#include "disk_registry_actor.h"
2+
#include "cloud/blockstore/libs/storage/core/proto_helpers.h"
23

34
#include <cloud/blockstore/libs/storage/api/disk_agent.h>
45

cloud/blockstore/libs/storage/volume/volume_actor.h

Lines changed: 18 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -716,8 +716,8 @@ class TVolumeActor final
716716
const TEvDiskRegistry::TEvAcquireDiskResponse::TPtr& ev,
717717
const NActors::TActorContext& ctx);
718718

719-
void HandleAcquireDiskResponseImpl(
720-
const NProto::TAcquireDiskResponse& record,
719+
void HandleDevicesAcquireFinishedImpl(
720+
const NProto::TError& error,
721721
const NActors::TActorContext& ctx);
722722

723723
void AcquireDisk(
@@ -726,8 +726,14 @@ class TVolumeActor final
726726
NProto::EVolumeAccessMode accessMode,
727727
ui64 mountSeqNumber);
728728

729-
void SendProxylessAcquireDisk(
730-
std::unique_ptr<TEvDiskRegistry::TEvAcquireDiskRequest> ev,
729+
void SendAcquireDevicesToAgents(
730+
TString clientId,
731+
NProto::EVolumeAccessMode accessMode,
732+
ui64 mountSeqNumber,
733+
const NActors::TActorContext& ctx);
734+
735+
void HandleDevicesAcquireFinished(
736+
const TEvVolumePrivate::TEvDevicesAcquireFinished::TPtr& ev,
731737
const NActors::TActorContext& ctx);
732738

733739
void AcquireDiskIfNeeded(const NActors::TActorContext& ctx);
@@ -750,14 +756,18 @@ class TVolumeActor final
750756
const TEvDiskRegistry::TEvReleaseDiskResponse::TPtr& ev,
751757
const NActors::TActorContext& ctx);
752758

753-
void HandleReleaseDiskResponseImpl(
754-
const NProto::TReleaseDiskResponse& record,
759+
void HandleDevicesReleasedFinishedImpl(
760+
const NProto::TError& error,
755761
const NActors::TActorContext& ctx);
756762

757763
void ReleaseDisk(const NActors::TActorContext& ctx, const TString& clientId);
758764

759-
void SendProxylessReleaseDisk(
760-
std::unique_ptr<TEvDiskRegistry::TEvReleaseDiskRequest> msg,
765+
void SendReleaseDevicesToAgents(
766+
const TString& clientId,
767+
const NActors::TActorContext& ctx);
768+
769+
void HandleDevicesReleasedFinished(
770+
const TEvVolumePrivate::TEvDevicesReleaseFinished::TPtr& ev,
761771
const NActors::TActorContext& ctx);
762772

763773
void HandleAllocateDiskResponse(
@@ -1035,6 +1045,4 @@ class TVolumeActor final
10351045

10361046
TString DescribeAllocation(const NProto::TAllocateDiskResponse& record);
10371047

1038-
TString LogDevices(const TVector<NProto::TDeviceConfig>& devices);
1039-
10401048
} // namespace NCloud::NBlockStore::NStorage

0 commit comments

Comments
 (0)