Merge pull request #3875 from sfc-gh-tclinkenbeard/add-incremental-backup-retry

Added retry loop for getReadVersion in IncrementalBackupWorkload
This commit is contained in:
Jingyu Zhou 2020-10-14 12:46:51 -07:00 committed by GitHub
commit c79f88cf04
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23

View File

@ -71,8 +71,16 @@ struct IncrementalBackupWorkload : TestWorkload {
if (self->waitForBackup) {
state Reference<IBackupContainer> backupContainer;
state UID backupUID;
state Reference<ReadYourWritesTransaction> tr(new ReadYourWritesTransaction(cx));
state Version v = wait(tr->getReadVersion());
state Version v;
state Transaction tr(cx);
loop {
try {
wait(store(v, tr.getReadVersion()));
break;
} catch (Error& e) {
wait(tr.onError(e));
}
}
// Wait for backup container to be created and avoid race condition
TraceEvent("IBackupWaitContainer");
loop {
@ -170,4 +178,4 @@ struct IncrementalBackupWorkload : TestWorkload {
virtual void getMetrics(vector<PerfMetric>& m) {}
};
WorkloadFactory<IncrementalBackupWorkload> IncrementalBackupWorkloadFactory("IncrementalBackup");
WorkloadFactory<IncrementalBackupWorkload> IncrementalBackupWorkloadFactory("IncrementalBackup");