]
Dan Berindei reassigned ISPN-7026:
----------------------------------
Assignee: Dan Berindei
CacheClusterJoinTest.testIsCoordinator random failures
------------------------------------------------------
Key: ISPN-7026
URL:
https://issues.jboss.org/browse/ISPN-7026
Project: Infinispan
Issue Type: Bug
Components: Core, Test Suite - Core
Affects Versions: 9.0.0.Alpha4
Reporter: Dan Berindei
Assignee: Dan Berindei
Labels: testsuite_stability
Fix For: 9.0.0.Beta1
{{CacheClusterJoinTest.testIsCoordinator}} assumes that once {{JGroupsTransport}}
received a view, {{JGroupsTransport.isCoordinator()}} returns the correct value.
However, only {{JGroupsTransfer.viewAccepted}} is synchronized, {{isCoordinator()}} is
not, so the main thread can see {{isCoordinator() == false}} even after
{{getMembers().get(0) == self}}.
It would be nice if {{isCoordinator()}}, {{getCoordinator()}}, and {{getMembers()}} were
more in sync, even though the view can always change between two calls. The simplest way
to do this would be to implement {{isCoordinator()}} and {{getCoordinator()}} on top of
{{getMembers()}} and remove their fields, since they're not use in
performance-sensitive code.