@@ -2240,14 +2240,11 @@ void TPDisk::ProcessChunkWriteQueue() {
2240
2240
Y_FAIL_S (" Unexpected request type# " << ui64 (req->GetType ()) << " in JointChunkWrites" );
2241
2241
}
2242
2242
}
2243
+ LWTRACK (PDiskProcessChunkWriteQueue, UpdateCycleOrbit, PCtx->PDiskId , JointChunkWrites.size ());
2243
2244
JointChunkWrites.clear ();
2244
2245
}
2245
2246
2246
2247
void TPDisk::ProcessChunkReadQueue () {
2247
- if (JointChunkReads.empty ()) {
2248
- return ;
2249
- }
2250
-
2251
2248
NHPTimer::STime now = HPNow ();
2252
2249
// Size (bytes) of elementary sectors block, it is useless to read/write less than that blockSize
2253
2250
ui64 bufferSize = BufferPool->GetBufferSize () / Format.SectorSize * Format.SectorSize ;
@@ -2298,6 +2295,7 @@ void TPDisk::ProcessChunkReadQueue() {
2298
2295
Y_FAIL_S (" Unexpected request type# " << ui64 (req->GetType ()) << " in JointChunkReads" );
2299
2296
}
2300
2297
}
2298
+ LWTRACK (PDiskProcessChunkReadQueue, UpdateCycleOrbit, PCtx->PDiskId , JointChunkReads.size ());
2301
2299
JointChunkReads.clear ();
2302
2300
}
2303
2301
@@ -3394,14 +3392,13 @@ void TPDisk::ProcessYardInitSet() {
3394
3392
}
3395
3393
3396
3394
void TPDisk::EnqueueAll () {
3397
- TInstant start = TInstant ::Now ();
3395
+ auto start = TMonotonic ::Now ();
3398
3396
3399
3397
TGuard<TMutex> guard (StateMutex);
3400
3398
size_t initialQueueSize = InputQueue.GetWaitingSize ();
3401
3399
size_t processedReqs = 0 ;
3402
3400
size_t pushedToForsetiReqs = 0 ;
3403
3401
3404
-
3405
3402
while (InputQueue.GetWaitingSize () > 0 ) {
3406
3403
TRequestBase* request = InputQueue.Pop ();
3407
3404
AtomicSub (InputQueueCost, request->Cost );
@@ -3453,12 +3450,13 @@ void TPDisk::EnqueueAll() {
3453
3450
}
3454
3451
}
3455
3452
3456
- double spentTimeMs = (TInstant ::Now () - start).MillisecondsFloat ();
3457
- LWPROBE (PDiskEnqueueAllDetails, PCtx->PDiskId , initialQueueSize, processedReqs, pushedToForsetiReqs, spentTimeMs);
3453
+ double spentTimeMs = (TMonotonic ::Now () - start).MillisecondsFloat ();
3454
+ LWTRACK (PDiskEnqueueAllDetails, UpdateCycleOrbit , PCtx->PDiskId , initialQueueSize, processedReqs, pushedToForsetiReqs, spentTimeMs);
3458
3455
}
3459
3456
3460
3457
void TPDisk::Update () {
3461
3458
Mon.UpdateDurationTracker .UpdateStarted ();
3459
+ LWTRACK (PDiskUpdateStarted, UpdateCycleOrbit, PCtx->PDiskId );
3462
3460
3463
3461
// ui32 userSectorSize = 0;
3464
3462
@@ -3554,9 +3552,9 @@ void TPDisk::Update() {
3554
3552
}
3555
3553
}
3556
3554
ui64 totalCost = totalLogCost + totalNonLogCost;
3557
- LWPROBE (PDiskForsetiCycle, PCtx->PDiskId , nowCycles, prevForsetiTimeNs, ForsetiPrevTimeNs, timeCorrection,
3555
+ LWTRACK (PDiskForsetiCycle, UpdateCycleOrbit , PCtx->PDiskId , nowCycles, prevForsetiTimeNs, ForsetiPrevTimeNs, timeCorrection,
3558
3556
realDuration, virtualDuration, ForsetiTimeNs, totalCost, virtualDeadline);
3559
- LWPROBE (PDiskMilliBatchSize, PCtx->PDiskId , totalLogCost, totalNonLogCost, totalLogReqs, totalNonLogReqs);
3557
+ LWTRACK (PDiskMilliBatchSize, UpdateCycleOrbit , PCtx->PDiskId , totalLogCost, totalNonLogCost, totalLogReqs, totalNonLogReqs);
3560
3558
ForsetiRealTimeCycles = nowCycles;
3561
3559
3562
3560
@@ -3636,6 +3634,7 @@ void TPDisk::Update() {
3636
3634
3637
3635
3638
3636
Mon.UpdateDurationTracker .WaitingStart (isNothingToDo);
3637
+ LWTRACK (PDiskStartWaiting, UpdateCycleOrbit, PCtx->PDiskId );
3639
3638
3640
3639
if (Cfg->SectorMap ) {
3641
3640
auto diskModeParams = Cfg->SectorMap ->GetDiskModeParams ();
@@ -3668,6 +3667,8 @@ void TPDisk::Update() {
3668
3667
InputQueue.ProducedWait (TDuration::MilliSeconds (10 ));
3669
3668
}
3670
3669
3670
+ LWTRACK (PDiskUpdateEnded, UpdateCycleOrbit, PCtx->PDiskId );
3671
+ UpdateCycleOrbit.Reset ();
3671
3672
Mon.UpdateDurationTracker .UpdateEnded ();
3672
3673
*Mon.PDiskThreadCPU = ThreadCPUTime ();
3673
3674
}
0 commit comments