Bug fix, starting a restore on a tag already in-use would spinloop forever and eventually run out of memory.

This commit is contained in:
Stephen Atherton 2019-04-01 15:00:24 -07:00
parent fdb46d40af
commit bae815a777

View File

@ -3772,7 +3772,7 @@ public:
printf("%s\n", details.c_str());
}
ERestoreState status_ = wait(restore.stateEnum().getD(tr));
ERestoreState status_ = wait(restore.stateEnum().getD(tr));
status = status_;
state bool runnable = wait(restore.isRunnable(tr));
@ -4251,9 +4251,10 @@ public:
wait(tr->commit());
break;
} catch(Error &e) {
if(e.code() != error_code_restore_duplicate_tag) {
wait(tr->onError(e));
if(e.code() == error_code_restore_duplicate_tag) {
throw;
}
wait(tr->onError(e));
}
}