[
https://issues.apache.org/jira/browse/IGNITE-23729?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Mirza Aliev updated IGNITE-23729:
---------------------------------
Epic Link: IGNITE-23694 (was: IGNITE-23438)
> 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
> Priority: Major
> Labels: ignite-3
>
> 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)