Merge pull request #2365 from xumengpanda/mengxu/no-wait-actor-fix-PR
Fix compilation warning that actor that does not contain wait statement
This commit is contained in:
commit
4d28793c76
|
@ -54,8 +54,8 @@ void initRestoreWorkerConfig();
|
|||
ACTOR Future<Void> handlerTerminateWorkerRequest(RestoreSimpleRequest req, Reference<RestoreWorkerData> self,
|
||||
RestoreWorkerInterface workerInterf, Database cx);
|
||||
ACTOR Future<Void> monitorWorkerLiveness(Reference<RestoreWorkerData> self);
|
||||
ACTOR Future<Void> handleRecruitRoleRequest(RestoreRecruitRoleRequest req, Reference<RestoreWorkerData> self,
|
||||
ActorCollection* actors, Database cx);
|
||||
void handleRecruitRoleRequest(RestoreRecruitRoleRequest req, Reference<RestoreWorkerData> self,
|
||||
ActorCollection* actors, Database cx);
|
||||
ACTOR Future<Void> collectRestoreWorkerInterface(Reference<RestoreWorkerData> self, Database cx,
|
||||
int min_num_workers = 2);
|
||||
ACTOR Future<Void> monitorleader(Reference<AsyncVar<RestoreWorkerInterface>> leader, Database cx,
|
||||
|
@ -80,17 +80,17 @@ ACTOR Future<Void> handlerTerminateWorkerRequest(RestoreSimpleRequest req, Refer
|
|||
|
||||
// Assume only 1 role on a restore worker.
|
||||
// Future: Multiple roles in a restore worker
|
||||
ACTOR Future<Void> handleRecruitRoleRequest(RestoreRecruitRoleRequest req, Reference<RestoreWorkerData> self,
|
||||
ActorCollection* actors, Database cx) {
|
||||
void handleRecruitRoleRequest(RestoreRecruitRoleRequest req, Reference<RestoreWorkerData> self,
|
||||
ActorCollection* actors, Database cx) {
|
||||
// Already recruited a role
|
||||
// Future: Allow multiple restore roles on a restore worker. The design should easily allow this.
|
||||
if (self->loaderInterf.present()) {
|
||||
ASSERT(req.role == RestoreRole::Loader);
|
||||
req.reply.send(RestoreRecruitRoleReply(self->id(), RestoreRole::Loader, self->loaderInterf.get()));
|
||||
return Void();
|
||||
return;
|
||||
} else if (self->applierInterf.present()) {
|
||||
req.reply.send(RestoreRecruitRoleReply(self->id(), RestoreRole::Applier, self->applierInterf.get()));
|
||||
return Void();
|
||||
return;
|
||||
}
|
||||
|
||||
if (req.role == RestoreRole::Loader) {
|
||||
|
@ -124,7 +124,7 @@ ACTOR Future<Void> handleRecruitRoleRequest(RestoreRecruitRoleRequest req, Refer
|
|||
.detail("HandleRecruitRoleRequest", "UnknownRole"); //.detail("Request", req.printable());
|
||||
}
|
||||
|
||||
return Void();
|
||||
return;
|
||||
}
|
||||
|
||||
// Read restoreWorkersKeys from DB to get each restore worker's workerInterface and set it to self->workerInterfaces;
|
||||
|
@ -235,7 +235,7 @@ ACTOR Future<Void> startRestoreWorker(Reference<RestoreWorkerData> self, Restore
|
|||
}
|
||||
when(RestoreRecruitRoleRequest req = waitNext(interf.recruitRole.getFuture())) {
|
||||
requestTypeStr = "recruitRole";
|
||||
actors.add(handleRecruitRoleRequest(req, self, &actors, cx));
|
||||
handleRecruitRoleRequest(req, self, &actors, cx);
|
||||
}
|
||||
when(RestoreSimpleRequest req = waitNext(interf.terminateWorker.getFuture())) {
|
||||
// Destroy the worker at the end of the restore
|
||||
|
|
|
@ -219,29 +219,25 @@ struct BackupAndParallelRestoreCorrectnessWorkload : TestWorkload {
|
|||
ACTOR static Future<Void> checkDB(Database cx, std::string when,
|
||||
BackupAndParallelRestoreCorrectnessWorkload* self) {
|
||||
|
||||
state Key keyPrefix = LiteralStringRef("");
|
||||
state Transaction tr(cx);
|
||||
state int retryCount = 0;
|
||||
loop {
|
||||
try {
|
||||
state Version v = wait(tr.getReadVersion());
|
||||
state Standalone<RangeResultRef> data = wait(
|
||||
tr.getRange(firstGreaterOrEqual(doubleToTestKey(0.0, keyPrefix)),
|
||||
firstGreaterOrEqual(doubleToTestKey(1.0, keyPrefix)), std::numeric_limits<int>::max()));
|
||||
// compareDBKVs(data, self);
|
||||
break;
|
||||
} catch (Error& e) {
|
||||
retryCount++;
|
||||
TraceEvent(retryCount > 20 ? SevWarnAlways : SevWarn, "CheckDBError").error(e);
|
||||
wait(tr.onError(e));
|
||||
}
|
||||
}
|
||||
|
||||
return Void();
|
||||
|
||||
// state Key keyPrefix = LiteralStringRef("");
|
||||
// // int numPrint = 20; //number of entries in the front and end to print out.
|
||||
// state Transaction tr(cx);
|
||||
// state int retryCount = 0;
|
||||
// loop {
|
||||
// try {
|
||||
// state Version v = wait( tr.getReadVersion() );
|
||||
// state Standalone<RangeResultRef> data = wait(tr.getRange(firstGreaterOrEqual(doubleToTestKey(0.0, keyPrefix)), firstGreaterOrEqual(doubleToTestKey(1.0, keyPrefix)), std::numeric_limits<int>::max()));
|
||||
// printf("Check DB, at %s. retryCount:%d Data size:%d, rangeResultInfo:%s\n", when.c_str(), retryCount,
|
||||
// data.size(), data.contents().toString().c_str());
|
||||
// compareDBKVs(data, self);
|
||||
// break;
|
||||
// } catch (Error& e) {
|
||||
// retryCount++;
|
||||
// TraceEvent(retryCount > 20 ? SevWarnAlways : SevWarn, "CheckDBError").error(e);
|
||||
// wait(tr.onError(e));
|
||||
// }
|
||||
// }
|
||||
|
||||
// return Void();
|
||||
|
||||
}
|
||||
|
||||
ACTOR static Future<Void> dumpDB(Database cx, std::string when, BackupAndParallelRestoreCorrectnessWorkload* self) {
|
||||
|
|
Loading…
Reference in New Issue