Kirill Gusakov created IGNITE-23729:
---------------------------------------
Summary: Handle possible errors on the metastore put in disaster
recovery mechanism
Key: IGNITE-23729
URL: https://issues.apache.org/jira/browse/IGNITE-23729
Project: Ignite
Issue Type: Improvement
Reporter: Kirill Gusakov
We need to add the logging of error, at least, for the following metastore put
future:
{code:java}
private CompletableFuture<Void> processNewRequest(DisasterRecoveryRequest
request) {
UUID operationId = request.operationId();
CompletableFuture<Void> operationFuture = new CompletableFuture<Void>()
.whenComplete((v, throwable) ->
ongoingOperationsById.remove(operationId))
.orTimeout(TIMEOUT_SECONDS, TimeUnit.SECONDS);
ongoingOperationsById.put(operationId, operationFuture);
metaStorageManager.put(RECOVERY_TRIGGER_KEY,
VersionedSerialization.toBytes(request,
DisasterRecoveryRequestSerializer.INSTANCE));
return operationFuture;
}
{code}
At the same time - looks like we shouldn't chain this put on the following
operationFuture, because the current disaster recovery logic will complete this
future only after the put handled together with appropriate watch event on the
same key.
--
This message was sent by Atlassian Jira
(v8.20.10#820010)