[
https://issues.apache.org/jira/browse/GEODE-1920?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16255729#comment-16255729
]
ASF GitHub Bot commented on GEODE-1920:
---------------------------------------
nabarunnag closed pull request #980: GEODE-1920 Addition of more logs to the
test
URL: https://github.com/apache/geode/pull/980
This is a PR merged from a forked repository.
As GitHub hides the original diff on merge, it is displayed below for
the sake of provenance:
As this is a foreign pull request (from a fork), the diff is supplied
below (as it won't show otherwise due to GitHub magic):
diff --git
a/geode-wan/src/test/java/org/apache/geode/internal/cache/wan/misc/WanAutoDiscoveryDUnitTest.java
b/geode-wan/src/test/java/org/apache/geode/internal/cache/wan/misc/WanAutoDiscoveryDUnitTest.java
index 7c1308790a..9f4dee2f0f 100644
---
a/geode-wan/src/test/java/org/apache/geode/internal/cache/wan/misc/WanAutoDiscoveryDUnitTest.java
+++
b/geode-wan/src/test/java/org/apache/geode/internal/cache/wan/misc/WanAutoDiscoveryDUnitTest.java
@@ -14,16 +14,17 @@
*/
package org.apache.geode.internal.cache.wan.misc;
-import static org.junit.Assert.*;
+import static org.junit.Assert.assertTrue;
+import static org.junit.Assert.fail;
import java.net.InetAddress;
import java.net.InetSocketAddress;
import java.net.UnknownHostException;
-import java.util.ArrayList;
import java.util.HashMap;
import java.util.HashSet;
import java.util.Map;
import java.util.Set;
+import java.util.stream.IntStream;
import org.junit.Ignore;
import org.junit.Test;
@@ -39,10 +40,7 @@
import org.apache.geode.test.dunit.Host;
import org.apache.geode.test.dunit.IgnoredException;
import org.apache.geode.test.dunit.LogWriterUtils;
-import org.apache.geode.test.dunit.cache.internal.JUnit4CacheTestCase;
-import org.apache.geode.test.dunit.internal.JUnit4DistributedTestCase;
import org.apache.geode.test.junit.categories.DistributedTest;
-import org.apache.geode.test.junit.categories.FlakyTest;
@Category(DistributedTest.class)
public class WanAutoDiscoveryDUnitTest extends WANTestBase {
@@ -234,7 +232,6 @@ public void test_TK_Recognises_LN_AND_NY() {
vm2.invoke(() -> WANTestBase.checkAllSiteMetaData(dsVsPort));
}
- @Category(FlakyTest.class) // GEODE-1920
@Test
public void test_NY_Recognises_TK_AND_HK_Simultaneously() {
Map<Integer, Set<InetSocketAddress>> dsVsPort = new HashMap<>();
@@ -261,27 +258,14 @@ public void test_NY_Recognises_TK_AND_HK_Simultaneously()
{
dsVsPort.put(4, locatorPortshk);
async[1] = vm3.invokeAsync(() -> WANTestBase.createFirstRemoteLocator(4,
nyLocPort1));
- ArrayList<Integer> locatorPortsln2 = new ArrayList<Integer>();
async[2] = vm4.invokeAsync(() -> WANTestBase.createSecondLocator(1,
lnLocPort1));
- ArrayList<Integer> locatorPortsny2 = new ArrayList<Integer>();
async[3] = vm5.invokeAsync(() -> WANTestBase.createSecondLocator(2,
nyLocPort1));
+ waitForAsyncInvokesToComplete(async);
- try {
- async[0].join();
- async[1].join();
- async[2].join();
- async[3].join();
- } catch (InterruptedException e) {
- e.printStackTrace();
- fail();
- }
-
- locatorPortstk.add(new InetSocketAddress("localhost", (Integer)
async[0].getReturnValue()));
- locatorPortshk.add(new InetSocketAddress("localhost", (Integer)
async[1].getReturnValue()));
- locatorPortsln.add(new InetSocketAddress("localhost", (Integer)
async[2].getReturnValue()));
- locatorPortsny.add(new InetSocketAddress("localhost", (Integer)
async[3].getReturnValue()));
+ addPortNumbersToDSPortNumCollection(locatorPortsln, locatorPortsny, async,
locatorPortstk,
+ locatorPortshk);
vm0.invoke(() -> WANTestBase.checkAllSiteMetaData(dsVsPort));
vm1.invoke(() -> WANTestBase.checkAllSiteMetaData(dsVsPort));
@@ -289,6 +273,52 @@ public void test_NY_Recognises_TK_AND_HK_Simultaneously() {
vm3.invoke(() -> WANTestBase.checkAllSiteMetaData(dsVsPort));
}
+ private void addPortNumbersToDSPortNumCollection(Set<InetSocketAddress>
locatorPortsln,
+ Set<InetSocketAddress> locatorPortsny, AsyncInvocation[] async,
+ Set<InetSocketAddress> locatorPortstk, Set<InetSocketAddress>
locatorPortshk) {
+ IntStream.range(0, 4).forEach(i -> {
+ Integer portNumber = null;
+ try {
+ portNumber = (Integer) async[i].get();
+ switch (i) {
+ case 0:
+ locatorPortstk.add(new InetSocketAddress("localhost", portNumber));
+ break;
+ case 1:
+ locatorPortshk.add(new InetSocketAddress("localhost", portNumber));
+ break;
+ case 2:
+ locatorPortsln.add(new InetSocketAddress("localhost", portNumber));
+ break;
+ case 3:
+ locatorPortsny.add(new InetSocketAddress("localhost", portNumber));
+ break;
+ }
+ } catch (Exception e) {
+ e.printStackTrace();
+ if (portNumber == null) {
+ fail("No port number was returned for async invocation #" + i);
+ }
+ fail();
+ }
+ });
+ }
+
+ private void waitForAsyncInvokesToComplete(AsyncInvocation[] async) {
+ IntStream.range(0, 4).forEach(i -> {
+ try {
+ async[i].join();
+ } catch (InterruptedException e) {
+ e.printStackTrace();
+ if (async[i].getException() != null) {
+ fail(
+ "Failed in async invocation : " + i + " with Exception : " +
async[i].getException());
+ }
+ fail();
+ }
+ });
+ }
+
@Test
public void test_LN_Sender_recognises_ALL_NY_Locators() {
----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on GitHub and use the
URL above to go to the specific comment.
For queries about this service, please contact Infrastructure at:
[email protected]
> CI Failure:
> WanAutoDiscoveryDUnitTest.test_NY_Recognises_TK_AND_HK_Simultaneously
> ---------------------------------------------------------------------------------
>
> Key: GEODE-1920
> URL: https://issues.apache.org/jira/browse/GEODE-1920
> Project: Geode
> Issue Type: Bug
> Components: wan
> Reporter: Eric Shu
> Labels: ci
>
> java.lang.NullPointerException
> at
> org.apache.geode.internal.cache.wan.misc.WanAutoDiscoveryDUnitTest.test_NY_Recognises_TK_AND_HK_Simultaneously(WanAutoDiscoveryDUnitTest.java:274)
> at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
> at
> sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
> at
> sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
> at java.lang.reflect.Method.invoke(Method.java:497)
> at
> org.junit.runners.model.FrameworkMethod$1.runReflectiveCall(FrameworkMethod.java:50)
> at
> org.junit.internal.runners.model.ReflectiveCallable.run(ReflectiveCallable.java:12)
> at
> org.junit.runners.model.FrameworkMethod.invokeExplosively(FrameworkMethod.java:47)
> at
> org.junit.internal.runners.statements.InvokeMethod.evaluate(InvokeMethod.java:17)
> at
> org.junit.internal.runners.statements.RunBefores.evaluate(RunBefores.java:26)
> at
> org.junit.internal.runners.statements.RunAfters.evaluate(RunAfters.java:27)
> at org.junit.rules.TestWatcher$1.evaluate(TestWatcher.java:55)
> at org.junit.rules.RunRules.evaluate(RunRules.java:20)
> at org.junit.runners.ParentRunner.runLeaf(ParentRunner.java:325)
> at
> org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:78)
> at
> org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:57)
> at org.junit.runners.ParentRunner$3.run(ParentRunner.java:290)
> at org.junit.runners.ParentRunner$1.schedule(ParentRunner.java:71)
> at org.junit.runners.ParentRunner.runChildren(ParentRunner.java:288)
> at org.junit.runners.ParentRunner.access$000(ParentRunner.java:58)
> at org.junit.runners.ParentRunner$2.evaluate(ParentRunner.java:268)
> at
> org.junit.internal.runners.statements.RunBefores.evaluate(RunBefores.java:26)
> at org.junit.runners.ParentRunner.run(ParentRunner.java:363)
> at
> org.gradle.api.internal.tasks.testing.junit.JUnitTestClassExecuter.runTestClass(JUnitTestClassExecuter.java:114)
> at
> org.gradle.api.internal.tasks.testing.junit.JUnitTestClassExecuter.execute(JUnitTestClassExecuter.java:57)
> at
> org.gradle.api.internal.tasks.testing.junit.JUnitTestClassProcessor.processTestClass(JUnitTestClassProcessor.java:66)
> at
> org.gradle.api.internal.tasks.testing.SuiteTestClassProcessor.processTestClass(SuiteTestClassProcessor.java:51)
> at sun.reflect.GeneratedMethodAccessor233.invoke(Unknown Source)
> at
> sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
> at java.lang.reflect.Method.invoke(Method.java:497)
> at
> org.gradle.internal.dispatch.ReflectionDispatch.dispatch(ReflectionDispatch.java:35)
> at
> org.gradle.internal.dispatch.ReflectionDispatch.dispatch(ReflectionDispatch.java:24)
> at
> org.gradle.internal.dispatch.ContextClassLoaderDispatch.dispatch(ContextClassLoaderDispatch.java:32)
> at
> org.gradle.internal.dispatch.ProxyDispatchAdapter$DispatchingInvocationHandler.invoke(ProxyDispatchAdapter.java:93)
> at com.sun.proxy.$Proxy2.processTestClass(Unknown Source)
> at
> org.gradle.api.internal.tasks.testing.worker.TestWorker.processTestClass(TestWorker.java:109)
> at sun.reflect.GeneratedMethodAccessor232.invoke(Unknown Source)
> at
> sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
> at java.lang.reflect.Method.invoke(Method.java:497)
> at
> org.gradle.internal.dispatch.ReflectionDispatch.dispatch(ReflectionDispatch.java:35)
> at
> org.gradle.internal.dispatch.ReflectionDispatch.dispatch(ReflectionDispatch.java:24)
> at
> org.gradle.internal.remote.internal.hub.MessageHub$Handler.run(MessageHub.java:377)
> at
> org.gradle.internal.concurrent.ExecutorPolicy$CatchAndRecordFailures.onExecute(ExecutorPolicy.java:54)
> at
> org.gradle.internal.concurrent.StoppableExecutorImpl$1.run(StoppableExecutorImpl.java:40)
> at
> java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
> at
> java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
> at java.lang.Thread.run(Thread.java:745)
--
This message was sent by Atlassian JIRA
(v6.4.14#64029)