[ 
https://issues.apache.org/jira/browse/CASSANDRA-15667?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17077514#comment-17077514
 ] 

Ekaterina Dimitrova commented on CASSANDRA-15667:
-------------------------------------------------

Just to be sure you saw that - resumable bootstrap is tested in another test 
too, that's why this one was removed, not blindly removed because it was flakey 
or something. Fix was applied to the other one but it was pointed in the ticket 
that in extremely rare cases it might fail. Why? From what I recall the 
bootstrap was sometimes completing too fast before the streaming is really 
interrupted from the byteman code and we didn't really have an instrument to 
control that. So the only fix was to introduce bigger delay which solves the 
issue in most of the cases.  I think I haven't seen this test failing anymore 
but it might be really possible in very rare cases. 

There is in parallel additional ticket to try to implement the test in the 
in-jvm test suite as according to Jordan West who is the Shepard for testing 
4.0,  there we might be able to control the flow deterministically. 

I will look In detail at this patch and the test again later today or tomorrow, 
thanks a lot for bringing it up!


> StreamResultFuture check for completeness is inconsistent, leading to races
> ---------------------------------------------------------------------------
>
>                 Key: CASSANDRA-15667
>                 URL: https://issues.apache.org/jira/browse/CASSANDRA-15667
>             Project: Cassandra
>          Issue Type: Bug
>          Components: Legacy/Streaming and Messaging
>            Reporter: Sergio Bossa
>            Assignee: Massimiliano Tomassi
>            Priority: Normal
>             Fix For: 4.0
>
>
> {{StreamResultFuture#maybeComplete()}} uses 
> {{StreamCoordinator#hasActiveSessions()}} to determine if all sessions are 
> completed, but then accesses each session state via 
> {{StreamCoordinator#getAllSessionInfo()}}: this is inconsistent, as the 
> former relies on the actual {{StreamSession}} state, while the latter on the 
> {{SessionInfo}} state, and the two are concurrently updated with no 
> coordination whatsoever.
> This leads to races, i.e. apparent in some dtest spurious failures, such as 
> {{TestBootstrap.resumable_bootstrap_test}} in CASSANDRA-15614 cc 
> [~e.dimitrova].



--
This message was sent by Atlassian Jira
(v8.3.4#803005)

---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscr...@cassandra.apache.org
For additional commands, e-mail: commits-h...@cassandra.apache.org

Reply via email to