MCPcopy Create free account
hub / github.com/apple/foundationdb / _execute

Method _execute

fdbclient/DatabaseBackupAgent.actor.cpp:631–656  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

629 };
630
631 ACTOR static Future<Void> _execute(Database cx,
632 Reference<TaskBucket> taskBucket,
633 Reference<FutureBucket> futureBucket,
634 Reference<Task> task) {
635 state FlowLock lock(CLIENT_KNOBS->BACKUP_LOCK_BYTES);
636
637 wait(checkTaskVersion(cx, task, EraseLogRangeTaskFunc::name, EraseLogRangeTaskFunc::version));
638
639 state Reference<ReadYourWritesTransaction> tr(new ReadYourWritesTransaction(taskBucket->src));
640 loop {
641 try {
642 Version endVersion = BinaryReader::fromStringRef<Version>(
643 task->params[DatabaseBackupAgent::keyEndVersion], Unversioned());
644 wait(eraseLogData(
645 tr,
646 task->params[BackupAgentBase::keyConfigLogUid],
647 task->params[BackupAgentBase::destUid],
648 Optional<Version>(endVersion),
649 CheckBackupUID::True,
650 BinaryReader::fromStringRef<Version>(task->params[BackupAgentBase::keyFolderId], Unversioned())));
651 wait(tr->commit());
652 return Void();
653 } catch (Error& e) {
654 wait(tr->onError(e));
655 }
656 }
657 }
658
659 ACTOR static Future<Key> addTask(Reference<ReadYourWritesTransaction> tr,

Callers

nothing calls this directly

Calls 5

UnversionedFunction · 0.85
eraseLogDataFunction · 0.85
onErrorMethod · 0.65
commitMethod · 0.65
VoidClass · 0.50

Tested by

no test coverage detected