[
https://issues.jboss.org/browse/WFLY-12514?page=com.atlassian.jira.plugin...
]
Brian Stansberry updated WFLY-12514:
------------------------------------
Description:
The testsuite/integration/multinode suite includes two servers. Tests do various
manipulations of those servers and use the ServerReload.reloadIfRequired utility to
attempt to reload the servers if necessary.
The problem is the behavior of the ServerReload.reloadIfRequired(ModelControllerClient)
method is to use TestsuiteEnvironment to get the address/port of the server to connect to
after the reload in order to poll waiting for completion of the reload. But that breaks
down in multi-server environments as TestsuiteEnvironment is going to only provide the
data for one of the servers, so ServerReload is not going to accurately wait for
completion of reload for the other.
ServerReload provides an overloaded reloadIfRequired method where a ManagementClient
instead of a ModelControllerClient can be provided. If that is used then the correct
address/port is taken from the ManagementClient. So that variant should be used wherever
possible.
was:
The testsuite/integration/multinode suite includes two servers. Tests do various
manipulations of those servers and use the ServerReload utility to attempt to reload the
servers if necessary.
The problem is the default behavior of most of the ServerReload utility methods is to use
TestsuiteEnvironment to get the address/port of the server to connect to after the reload
in order to poll waiting for completion of the reload. But that breaks down in
multi-server environments as TestsuiteEnvironment is going to only provide the data for
one of the servers, so ServerReload is not going to accurately wait for completion of
reload for the other.
ServerReload provides a method where the address/port to use for waiting can be provided.
Server reload race conditions in testsuite/integration/multinode
----------------------------------------------------------------
Key: WFLY-12514
URL:
https://issues.jboss.org/browse/WFLY-12514
Project: WildFly
Issue Type: Bug
Components: Test Suite
Reporter: Brian Stansberry
Assignee: Brian Stansberry
Priority: Major
The testsuite/integration/multinode suite includes two servers. Tests do various
manipulations of those servers and use the ServerReload.reloadIfRequired utility to
attempt to reload the servers if necessary.
The problem is the behavior of the ServerReload.reloadIfRequired(ModelControllerClient)
method is to use TestsuiteEnvironment to get the address/port of the server to connect to
after the reload in order to poll waiting for completion of the reload. But that breaks
down in multi-server environments as TestsuiteEnvironment is going to only provide the
data for one of the servers, so ServerReload is not going to accurately wait for
completion of reload for the other.
ServerReload provides an overloaded reloadIfRequired method where a ManagementClient
instead of a ModelControllerClient can be provided. If that is used then the correct
address/port is taken from the ManagementClient. So that variant should be used wherever
possible.
--
This message was sent by Atlassian Jira
(v7.13.5#713005)