-
Notifications
You must be signed in to change notification settings - Fork 34
Open
Labels
blockstoreAdd this label to run only cloud/blockstore build and tests on PRAdd this label to run only cloud/blockstore build and tests on PR
Description
No actual delay here:
nbs/cloud/blockstore/libs/storage/partition_nonrepl/part_mirror_resync_actor_resync.cpp
Lines 206 to 209 in f290332
if (GetErrorKind(msg->GetError()) == EErrorKind::ErrorRetriable) { | |
// Reschedule range | |
State.AddPendingResyncRange(rangeId.first); | |
ScheduleResyncNextRange(ctx); |
Same story for the migration actor:
Lines 301 to 323 in 9a831d6
if (HasError(msg->GetError())) { | |
LOG_WARN(ctx, TBlockStoreComponents::PARTITION, | |
"[%s] Range migration failed: %s, error: %s", | |
DiskId.c_str(), | |
DescribeRange(msg->Range).c_str(), | |
FormatError(msg->GetError()).c_str()); | |
if (GetErrorKind(msg->GetError()) != EErrorKind::ErrorRetriable) { | |
OnMigrationNonRetriableError(ctx); | |
return; | |
} | |
// Schedule to retry the migration of the failed range. | |
const bool inserted = DeferredMigrations.TryInsert(msg->Range); | |
if (!inserted) { | |
ReportOverlappingRangesDuringMigrationDetected( | |
TStringBuilder() | |
<< "Can't defer a range to migrate later. Range: " << msg->Range | |
<< ", diskId: " << DiskId); | |
} | |
ScheduleRangeMigration(ctx); | |
return; | |
} |
Metadata
Metadata
Assignees
Labels
blockstoreAdd this label to run only cloud/blockstore build and tests on PRAdd this label to run only cloud/blockstore build and tests on PR