ydb-platform / nbs

Network Block & File Store
Apache License 2.0
58 stars 22 forks source link

[Filestore] Implement throttling for DescribeData and GenerateBlobIds requests #1709

Open qkrorlqr opened 2 months ago

qkrorlqr commented 2 months ago

If ThreeStageWrite / TwoStageRead features are enabled, throttling actually doesn't work since it affects only WriteData and ReadData requests and is implemented inside the tablet. We need to implement similar throttling logic for GenerateBlobIds and DescribeData requests which are sent instead of WriteData and ReadData in case ThreeStageWrite and TwoStageRead features are enabled.

debnatkh commented 2 months ago

Might be importnant to note that if the request is throttled, we may need to prolong an acquired lease for the collect barrier in the same way, as it is done here

https://github.com/ydb-platform/nbs/blob/d529de1f0177ee34c22bbb113fc9aa3fad252e6c/cloud/filestore/libs/storage/tablet/tablet_actor_adddata.cpp#L329-L331