Uploaded image for project: 'Geode'
  1. Geode
  2. GEODE-5810

events not drained from secondary queues in testPartitionedParallelPropagationHA test

    XMLWordPrintableJSON

Details

    • Bug
    • Status: Resolved
    • Major
    • Resolution: Cannot Reproduce
    • None
    • None
    • wan

    Description

      There are a number of failures in this test method (in different runs). They seem to be related…

      The test appears to be testing WAN replication by doing puts across WAN-replicated regions and then looking both for entries to appear in regions on various servers and also by looking for replication queues to empty.

      This failure occurred on mass-test-run in https://concourse.apachegeode-ci.info/teams/main/pipelines/mass-test-run/jobs/DistributedTest/builds/692:

      org.apache.geode.test.dunit.RMIException: While invoking org.apache.geode.internal.cache.wan.concurrent.ConcurrentParallelGatewaySenderDUnitTest$$Lambda$207/1640000240.run in VM 2 running on Host 4edee9492058 with 8 VMs
      	at org.apache.geode.test.dunit.VM.invoke(VM.java:450)
      	at org.apache.geode.test.dunit.VM.invoke(VM.java:419)
      	at org.apache.geode.test.dunit.VM.invoke(VM.java:362)
      	at org.apache.geode.internal.cache.wan.concurrent.ConcurrentParallelGatewaySenderDUnitTest.testPartitionedParallelPropagationHA(ConcurrentParallelGatewaySenderDUnitTest.java:614)
      	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:498)
      	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.JUnitTestClassExecutor.runTestClass(JUnitTestClassExecutor.java:106)
      	at org.gradle.api.internal.tasks.testing.junit.JUnitTestClassExecutor.execute(JUnitTestClassExecutor.java:58)
      	at org.gradle.api.internal.tasks.testing.junit.JUnitTestClassExecutor.execute(JUnitTestClassExecutor.java:38)
      	at org.gradle.api.internal.tasks.testing.junit.AbstractJUnitTestClassProcessor.processTestClass(AbstractJUnitTestClassProcessor.java:66)
      	at org.gradle.api.internal.tasks.testing.SuiteTestClassProcessor.processTestClass(SuiteTestClassProcessor.java:51)
      	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:498)
      	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:117)
      	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:498)
      	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.MessageHubBackedObjectConnection$DispatchWrapper.dispatch(MessageHubBackedObjectConnection.java:155)
      	at org.gradle.internal.remote.internal.hub.MessageHubBackedObjectConnection$DispatchWrapper.dispatch(MessageHubBackedObjectConnection.java:137)
      	at org.gradle.internal.remote.internal.hub.MessageHub$Handler.run(MessageHub.java:404)
      	at org.gradle.internal.concurrent.ExecutorPolicy$CatchAndRecordFailures.onExecute(ExecutorPolicy.java:63)
      	at org.gradle.internal.concurrent.ManagedExecutorImpl$1.run(ManagedExecutorImpl.java:46)
      	at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)
      	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)
      	at org.gradle.internal.concurrent.ThreadFactoryImpl$ManagedThreadRunnable.run(ThreadFactoryImpl.java:55)
      	at java.lang.Thread.run(Thread.java:748)
      Caused by: org.awaitility.core.ConditionTimeoutException: Assertion condition defined as a lambda expression in org.apache.geode.internal.cache.wan.concurrent.ConcurrentParallelGatewaySenderDUnitTest that uses int Failure in waiting for additional 20 events to be received by the receiver  expected:<true> but was:<false> within 30000 milliseconds.
      	at org.awaitility.core.ConditionAwaiter.await(ConditionAwaiter.java:145)
      	at org.awaitility.core.AssertionCondition.await(AssertionCondition.java:122)
      	at org.awaitility.core.AssertionCondition.await(AssertionCondition.java:32)
      	at org.awaitility.core.ConditionFactory.until(ConditionFactory.java:890)
      	at org.awaitility.core.ConditionFactory.untilAsserted(ConditionFactory.java:711)
      	at org.apache.geode.internal.cache.wan.concurrent.ConcurrentParallelGatewaySenderDUnitTest.lambda$testPartitionedParallelPropagationHA$fd36e89b$1(ConcurrentParallelGatewaySenderDUnitTest.java:615)
      	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:498)
      	at hydra.MethExecutor.executeObject(MethExecutor.java:244)
      	at org.apache.geode.test.dunit.standalone.RemoteDUnitVM.executeMethodOnObject(RemoteDUnitVM.java:70)
      	at sun.reflect.GeneratedMethodAccessor421.invoke(Unknown Source)
      	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
      	at java.lang.reflect.Method.invoke(Method.java:498)
      	at sun.rmi.server.UnicastServerRef.dispatch(UnicastServerRef.java:357)
      	at sun.rmi.transport.Transport$1.run(Transport.java:200)
      	at sun.rmi.transport.Transport$1.run(Transport.java:197)
      	at java.security.AccessController.doPrivileged(Native Method)
      	at sun.rmi.transport.Transport.serviceCall(Transport.java:196)
      	at sun.rmi.transport.tcp.TCPTransport.handleMessages(TCPTransport.java:573)
      	at sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.run0(TCPTransport.java:834)
      	at sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.lambda$run$0(TCPTransport.java:688)
      	at java.security.AccessController.doPrivileged(Native Method)
      	at sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.run(TCPTransport.java:687)
      	at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)
      	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)
      	... 1 more
      Caused by: java.lang.AssertionError: Failure in waiting for additional 20 events to be received by the receiver  expected:<true> but was:<false>
      	at org.junit.Assert.fail(Assert.java:88)
      	at org.junit.Assert.failNotEquals(Assert.java:834)
      	at org.junit.Assert.assertEquals(Assert.java:118)
      	at org.apache.geode.internal.cache.wan.concurrent.ConcurrentParallelGatewaySenderDUnitTest.lambda$null$1(ConcurrentParallelGatewaySenderDUnitTest.java:615)
      	at org.awaitility.core.AssertionCondition$1.eval(AssertionCondition.java:55)
      	at org.awaitility.core.ConditionAwaiter$ConditionPoller.call(ConditionAwaiter.java:192)
      	at org.awaitility.core.ConditionAwaiter$ConditionPoller.call(ConditionAwaiter.java:179)
      	at java.util.concurrent.FutureTask.run(FutureTask.java:266)
      	... 3 more
      

      Here's another that occurs later in the test method, in at least this run: https://concourse.apachegeode-ci.info/teams/main/pipelines/mass-test-run/jobs/DistributedTest/builds/809

      Stack trace:

      org.apache.geode.internal.cache.wan.concurrent.ConcurrentParallelGatewaySenderDUnitTest > testPartitionedParallelPropagationHA FAILED
          org.apache.geode.test.dunit.RMIException: While invoking org.apache.geode.internal.cache.wan.concurrent.ConcurrentParallelGatewaySenderDUnitTest$$Lambda$214/55002370.run in VM 7 running on Host e1abfa396082 with 8 VMs
              at org.apache.geode.test.dunit.VM.invoke(VM.java:450)
              at org.apache.geode.test.dunit.VM.invoke(VM.java:419)
              at org.apache.geode.test.dunit.VM.invoke(VM.java:362)
              at org.apache.geode.internal.cache.wan.concurrent.ConcurrentParallelGatewaySenderDUnitTest.testPartitionedParallelPropagationHA(ConcurrentParallelGatewaySenderDUnitTest.java:634)
      
              Caused by:
              org.awaitility.core.ConditionTimeoutException: Assertion condition defined as a lambda expression in org.apache.geode.internal.cache.wan.WANTestBase that uses org.apache.geode.internal.cache.wan.AbstractGatewaySender, org.apache.geode.internal.cache.wan.AbstractGatewaySenderorg.apache.geode.internal.cache.RegionQueue Expected events in all secondary queues are drained but actual is 1. Queue content is: bucketId=6:[206]; expected:<0> but was:<1> within 120 seconds.
                  at org.awaitility.core.ConditionAwaiter.await(ConditionAwaiter.java:145)
                  at org.awaitility.core.AssertionCondition.await(AssertionCondition.java:122)
                  at org.awaitility.core.AssertionCondition.await(AssertionCondition.java:32)
                  at org.awaitility.core.ConditionFactory.until(ConditionFactory.java:890)
                  at org.awaitility.core.ConditionFactory.untilAsserted(ConditionFactory.java:711)
                  at org.apache.geode.internal.cache.wan.WANTestBase.validateParallelSenderQueueAllBucketsDrained(WANTestBase.java:3290)
                  at org.apache.geode.internal.cache.wan.concurrent.ConcurrentParallelGatewaySenderDUnitTest.lambda$testPartitionedParallelPropagationHA$bb17a952$17(ConcurrentParallelGatewaySenderDUnitTest.java:634)
      
                  Caused by:
                  java.lang.AssertionError: Expected events in all secondary queues are drained but actual is 1. Queue content is: bucketId=6:[206]; expected:<0> but was:<1>
      

      Also this

      Attachments

        Issue Links

          Activity

            People

              Unassigned Unassigned
              burcham Bill Burcham
              Votes:
              0 Vote for this issue
              Watchers:
              2 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved: