[ 
https://issues.apache.org/jira/browse/BEAM-10392?focusedWorklogId=453252&page=com.atlassian.jira.plugin.system.issuetabpanels:worklog-tabpanel#worklog-453252
 ]

ASF GitHub Bot logged work on BEAM-10392:
-----------------------------------------

                Author: ASF GitHub Bot
            Created on: 01/Jul/20 06:33
            Start Date: 01/Jul/20 06:33
    Worklog Time Spent: 10m 
      Work Description: ajamato commented on a change in pull request #12137:
URL: https://github.com/apache/beam/pull/12137#discussion_r448143856



##########
File path: 
sdks/java/io/rabbitmq/src/test/java/org/apache/beam/sdk/io/rabbitmq/RabbitMqIOTest.java
##########
@@ -396,18 +394,18 @@ public void testWriteQueue() throws Exception {
       connection = connectionFactory.newConnection();
       channel = connection.createChannel();
       channel.queueDeclare("TEST", true, false, false, null);
-      Consumer consumer = new RabbitMqTestUtils.TestConsumer(channel, 
received);
+      RabbitMqTestUtils.TestConsumer consumer = new 
RabbitMqTestUtils.TestConsumer(channel);
       channel.basicConsume("TEST", true, consumer);
 
       p.run();
 
-      while (received.size() < maxNumRecords) {
+      while (consumer.getReceived().size() < maxNumRecords) {
         Thread.sleep(500);
       }
 
-      assertEquals(maxNumRecords, received.size());
+      assertEquals(maxNumRecords, consumer.getReceived().size());

Review comment:
       nit: I doubt this matters because you only add elements to the received 
list. but might be safer style to use the same reference instead of calling 
getReceived() 3 times. Which ensures the exact same snapshot. Up to you if you 
want to change it.




----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

For queries about this service, please contact Infrastructure at:
[email protected]


Issue Time Tracking
-------------------

    Worklog Id:     (was: 453252)
    Time Spent: 50m  (was: 40m)

> :sdks:java:io:rabbitmq:test gets stuck regularly
> ------------------------------------------------
>
>                 Key: BEAM-10392
>                 URL: https://issues.apache.org/jira/browse/BEAM-10392
>             Project: Beam
>          Issue Type: Improvement
>          Components: io-java-rabbitmq
>            Reporter: Luke Cwik
>            Assignee: Luke Cwik
>            Priority: P2
>          Time Spent: 50m
>  Remaining Estimate: 0h
>
> See [https://ci-beam.apache.org/job/beam_PreCommit_Java_Commit/12017/] for an 
> example.
> Here is one with the stack trace 
> https://ci-beam.apache.org/job/beam_PreCommit_Java_Commit/12035/testReport/junit/org.apache.beam.sdk.io.rabbitmq/RabbitMqIOTest/classMethod/:
> {code:java}
> org.junit.runners.model.TestTimedOutException: test timed out after 5 minutes
>       at sun.misc.Unsafe.park(Native Method)
>       at 
> java.util.concurrent.locks.LockSupport.parkNanos(LockSupport.java:215)
>       at 
> java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.awaitNanos(AbstractQueuedSynchronizer.java:2078)
>       at 
> java.util.concurrent.LinkedBlockingQueue.poll(LinkedBlockingQueue.java:467)
>       at 
> org.apache.beam.runners.direct.ExecutorServiceParallelExecutor$QueueMessageReceiver.tryNext(ExecutorServiceParallelExecutor.java:410)
>       at 
> org.apache.beam.runners.direct.ExecutorServiceParallelExecutor$QueueMessageReceiver.access$300(ExecutorServiceParallelExecutor.java:383)
>       at 
> org.apache.beam.runners.direct.ExecutorServiceParallelExecutor.waitUntilFinish(ExecutorServiceParallelExecutor.java:245)
>       at 
> org.apache.beam.runners.direct.DirectRunner$DirectPipelineResult.waitUntilFinish(DirectRunner.java:343)
>       at 
> org.apache.beam.runners.direct.DirectRunner$DirectPipelineResult.waitUntilFinish(DirectRunner.java:318)
>       at 
> org.apache.beam.runners.direct.DirectRunner.run(DirectRunner.java:213)
>       at org.apache.beam.runners.direct.DirectRunner.run(DirectRunner.java:67)
>       at org.apache.beam.sdk.Pipeline.run(Pipeline.java:317)
>       at org.apache.beam.sdk.testing.TestPipeline.run(TestPipeline.java:350)
>       at org.apache.beam.sdk.testing.TestPipeline.run(TestPipeline.java:331)
>       at 
> org.apache.beam.sdk.io.rabbitmq.RabbitMqIOTest.doExchangeTest(RabbitMqIOTest.java:232)
>       at 
> org.apache.beam.sdk.io.rabbitmq.RabbitMqIOTest.doExchangeTest(RabbitMqIOTest.java:255)
>       at 
> org.apache.beam.sdk.io.rabbitmq.RabbitMqIOTest.testUseCorrelationIdFailsWhenIdsMissing(RabbitMqIOTest.java:362)
>       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:59)
>       at 
> org.junit.internal.runners.model.ReflectiveCallable.run(ReflectiveCallable.java:12)
>       at 
> org.junit.runners.model.FrameworkMethod.invokeExplosively(FrameworkMethod.java:56)
>       at 
> org.junit.internal.runners.statements.InvokeMethod.evaluate(InvokeMethod.java:17)
>       at 
> org.junit.internal.runners.statements.ExpectException.evaluate(ExpectException.java:19)
>       at 
> org.apache.beam.sdk.testing.TestPipeline$1.evaluate(TestPipeline.java:319)
>       at org.junit.runners.ParentRunner$3.evaluate(ParentRunner.java:305)
>       at 
> org.junit.runners.BlockJUnit4ClassRunner$1.evaluate(BlockJUnit4ClassRunner.java:100)
>       at org.junit.runners.ParentRunner.runLeaf(ParentRunner.java:365)
>       at 
> org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:103)
>       at 
> org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:63)
>       at org.junit.runners.ParentRunner$4.run(ParentRunner.java:330)
>       at org.junit.runners.ParentRunner$1.schedule(ParentRunner.java:78)
>       at org.junit.runners.ParentRunner.runChildren(ParentRunner.java:328)
>       at org.junit.runners.ParentRunner.access$100(ParentRunner.java:65)
>       at org.junit.runners.ParentRunner$2.evaluate(ParentRunner.java:292)
>       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.internal.runners.statements.FailOnTimeout$CallableStatement.call(FailOnTimeout.java:288)
>       at 
> org.junit.internal.runners.statements.FailOnTimeout$CallableStatement.call(FailOnTimeout.java:282)
>       at java.util.concurrent.FutureTask.run(FutureTask.java:266)
>       at java.lang.Thread.run(Thread.java:748)
> {code}



--
This message was sent by Atlassian Jira
(v8.3.4#803005)

Reply via email to