[
https://issues.jboss.org/browse/WFLY-1499?page=com.atlassian.jira.plugin....
]
Ivo Studensky commented on WFLY-1499:
-------------------------------------
I've added a new Arquillian extension for clustering tests running in custom mode
which can undeploy everything from containers, i.e. any deployments left there, on
AfterClass event even if the containers are stopped at that moment. This should fix the
intermittent issues described above where undeployed deployments make the subsequent tests
to fail. The new extension is CleanUnmanagedContainersOnAfterClassExtension.
And I've also enhanced the clustering NodeUtil to remember what was deployed, so now
it effectively denies multiple deployments and also allows better/safer undeploy of them.
Some of the worst testcases have already been adopted to it by me, but I did not have so
much time to change all the clustering tests. The change implies to the tests which extend
ClusterAbstractTestCase.
Clustering tests intermittently fail mainly because they do not clean
their deployments properly
------------------------------------------------------------------------------------------------
Key: WFLY-1499
URL:
https://issues.jboss.org/browse/WFLY-1499
Project: WildFly
Issue Type: Bug
Components: Test Suite
Affects Versions: 8.0.0.Alpha1
Reporter: Ivo Studensky
Assignee: Ivo Studensky
Fix For: 8.0.0.Alpha2
Almost all clustering tests from the testsuite deploys what they need to perform the
test, but almost none of those tests do undeploy of their deployments. Then, if the tests
are run in an unexpected order (different JVM) or if some of them fail their deployments
keeps at servers and often cause a failure of subsequent tests.
For example {{RemoteStatelessFailoverTestCase(ejb3)}} stops {{CONTAINER-1}} in the middle
of a testLoadBalance method and never tries to undeploy DEPLOYMENT_1 from it. So if it
hits any failure in the subsequent {{this.establishView(listener, NODES[1]);}} the
{{CONTAINER-1}} will never be started up again by RemoteStatelessFailoverTestCase and
hence will never be cleaned up by Arquillian which normally undeploys all deployments from
the running custom containers on after-class event. And then StatefulFailoverTestCase
fails with
{noformat}
org.jboss.as.test.clustering.ViewChangeListenerServlet threw exception:
java.lang.InterruptedException: Cluster 'ejb' failed to establish view
[node-1/ejb] within 15000 ms. Current view is: [node-0/ejb, node-1/ejb]
{noformat}
Another frequent issue with clustering tests is that they blindly deploy the same
deployments manytimes which leads to duplicate deploy failures.
--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see:
http://www.atlassian.com/software/jira