[ 
https://issues.apache.org/jira/browse/IGNITE-23675?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

 Kirill Sizov updated IGNITE-23675:
-----------------------------------
    Fix Version/s:     (was: 3.0)

> WatchProcessor#notifyWatches:notificationFuture exception handling is missing
> -----------------------------------------------------------------------------
>
>                 Key: IGNITE-23675
>                 URL: https://issues.apache.org/jira/browse/IGNITE-23675
>             Project: Ignite
>          Issue Type: Bug
>            Reporter: Alexander Lapin
>            Assignee:  Kirill Sizov
>            Priority: Major
>              Labels: ignite-3
>          Time Spent: 0.5h
>  Remaining Estimate: 0h
>
> h3. Motivation
> Following assertions aren't logged
> {code:java}
>     private CompletableFuture<?> completeInternal(long causalityToken) {
>         synchronized (updateMutex) {
>             assert expectedToken == -1 || expectedToken == causalityToken
>                     : String.format("Causality token mismatch, expected %d, 
> got %d", expectedToken, causalityToken);
>             assert causalityToken > lastCompleteToken : String.format(
>                     "Causality token must be greater than the last completed: 
> [token=%s, lastCompleted=%s]", causalityToken,
>                     lastCompleteToken);
>             assert causalityToken > lastDeletedToken : String.format(
>                     "Causality token must be greater than the last deleted: 
> [token=%s, lastDeleted=%s]", causalityToken,
>                     lastDeletedToken);
>  
> {code}
> and notificationFuture in WatchProcessor is hanged forever.
>  
> In order to fix that 
> {code:java}
>                 .whenCompleteAsync((unused, throwable) -> {
>                     if (throwable != null) {
>                         LOG.error("Failed to notify watches.", throwable);
>                         
> notifyFailureHandlerOnFirstFailureInNotificationChain(throwable);
>                     }
>                 }, watchExecutor)
> {code}
> or similar should be added to WatchProcessor#notificationFuture exception 
> handling.
> That will highlight some 
> [flaky|https://ci.ignite.apache.org/buildConfiguration/ApacheIgnite3xGradle_Test_RunAllTests/8617621?expandBuildDeploymentsSection=false&hideTestsFromDependencies=false&hideProblemsFromDependencies=false&expandBuildProblemsSection=true&expandCode+Inspection=true]
>  tests that should be fixed - this is the biggest difficulty here.



--
This message was sent by Atlassian Jira
(v8.20.10#820010)

Reply via email to