Uploaded image for project: 'James Server'
  1. James Server
  2. JAMES-2614

RabbitMQMailQueueTest::concurrentEnqueueDequeueShouldNotFail is unstable

    XMLWordPrintableJSON

Details

    • Bug
    • Status: Closed
    • Major
    • Resolution: Fixed
    • None
    • None
    • Queue, rabbitmq
    • None

    Description

      RabbitMQMailQueueTest::concurrentEnqueueDequeueShouldNotFail is unstable and have high probability of failing in some environments.

      The related test is disabled, and need to be re-enabled after investigation and a fix.

      Here are the related stacktrace:

      [null] 11:45:50.630 [ERROR] o.a.j.u.c.ConcurrentTestRunner - Error caught during concurrent testing
      [null] com.rabbitmq.client.ShutdownSignalException: channel error; protocol method: #method<channel.close>(reply-code=404, reply-text=NOT_FOUND - no queue 'JamesMailQueue-workqueue-spool' in vhost '/', class-id=60, method-id=70)
      [null] 	at com.rabbitmq.client.impl.ChannelN.asyncShutdown(ChannelN.java:516)
      [null] 	at com.rabbitmq.client.impl.ChannelN.processAsync(ChannelN.java:346)
      [null] 	at com.rabbitmq.client.impl.AMQChannel.handleCompleteInboundCommand(AMQChannel.java:178)
      [null] 	at com.rabbitmq.client.impl.AMQChannel.handleFrame(AMQChannel.java:111)
      [null] 	at com.rabbitmq.client.impl.AMQConnection.readFrame(AMQConnection.java:670)
      [null] 	at com.rabbitmq.client.impl.AMQConnection.access$300(AMQConnection.java:48)
      [null] 	at com.rabbitmq.client.impl.AMQConnection$MainLoop.run(AMQConnection.java:597)
      [null] 	... 1 common frames omitted
      [null] Wrapped by: com.rabbitmq.client.ShutdownSignalException: channel error; protocol method: #method<channel.close>(reply-code=404, reply-text=NOT_FOUND - no queue 'JamesMailQueue-workqueue-spool' in vhost '/', class-id=60, method-id=70)
      [null] 	at com.rabbitmq.utility.ValueOrException.getValue(ValueOrException.java:66)
      [null] 	at com.rabbitmq.utility.BlockingValueOrException.uninterruptibleGetValue(BlockingValueOrException.java:36)
      [null] 	at com.rabbitmq.client.impl.AMQChannel$BlockingRpcContinuation.getReply(AMQChannel.java:494)
      [null] 	at com.rabbitmq.client.impl.AMQChannel.privateRpc(AMQChannel.java:288)
      [null] 	at com.rabbitmq.client.impl.AMQChannel.exnWrappingRpc(AMQChannel.java:138)
      [null] 	... 16 common frames omitted
      [null] Wrapped by: java.io.IOException: null
      [null] 	at com.rabbitmq.client.impl.AMQChannel.wrap(AMQChannel.java:126)
      [null] 	at com.rabbitmq.client.impl.AMQChannel.wrap(AMQChannel.java:122)
      [null] 	at com.rabbitmq.client.impl.AMQChannel.exnWrappingRpc(AMQChannel.java:144)
      [null] 	at com.rabbitmq.client.impl.ChannelN.basicGet(ChannelN.java:1148)
      [null] 	at com.rabbitmq.client.impl.recovery.AutorecoveringChannel.basicGet(AutorecoveringChannel.java:431)
      [null] 	at org.apache.james.queue.rabbitmq.RabbitClient.lambda$poll$4(RabbitClient.java:86)
      [null] 	at org.apache.james.backend.rabbitmq.SimpleChannelPool.execute(SimpleChannelPool.java:46)
      [null] 	at org.apache.james.queue.rabbitmq.RabbitClient.poll(RabbitClient.java:87)
      [null] 	at org.apache.james.queue.rabbitmq.Dequeuer.singleChannelRead(Dequeuer.java:136)
      [null] 	at com.nurkiewicz.asyncretry.AsyncRetryExecutor.lambda$getWithRetry$1(AsyncRetryExecutor.java:62)
      [null] 	at com.nurkiewicz.asyncretry.SyncRetryJob.run(SyncRetryJob.java:23)
      [null] 	... 8 common frames omitted
      [null] Wrapped by: java.util.concurrent.CompletionException: java.io.IOException
      [null] 	at java.util.concurrent.CompletableFuture.encodeThrowable(CompletableFuture.java:292)
      [null] 	at java.util.concurrent.CompletableFuture.completeThrowable(CompletableFuture.java:308)
      [null] 	at java.util.concurrent.CompletableFuture.uniApply(CompletableFuture.java:593)
      [null] 	at java.util.concurrent.CompletableFuture$UniApply.tryFire(CompletableFuture.java:577)
      [null] 	at java.util.concurrent.CompletableFuture.postComplete(CompletableFuture.java:474)
      [null] 	at java.util.concurrent.CompletableFuture.completeExceptionally(CompletableFuture.java:1977)
      [null] 	at com.nurkiewicz.asyncretry.RetryJob.retryOrAbort(RetryJob.java:74)
      [null] 	at com.nurkiewicz.asyncretry.RetryJob.handleUserThrowable(RetryJob.java:58)
      [null] 	at com.nurkiewicz.asyncretry.RetryJob.handleThrowable(RetryJob.java:50)
      [null] 	at com.nurkiewicz.asyncretry.SyncRetryJob.run(SyncRetryJob.java:26)
      [null] 	at com.nurkiewicz.asyncretry.RetryJob.run(RetryJob.java:108)
      [null] 	at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511)
      [null] 	at java.util.concurrent.FutureTask.run(FutureTask.java:266)
      [null] 	at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.access$201(ScheduledThreadPoolExecutor.java:180)
      [null] 	at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:293)
      [null] 	at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)
      [null] 	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)
      [null] 	at java.lang.Thread.run(Thread.java:748)
      [null] 11:45:50.668 [ERROR] o.a.j.u.c.ConcurrentTestRunner - Error caught during concurrent testing
      [null] com.rabbitmq.client.ShutdownSignalException: channel error; protocol method: #method<channel.close>(reply-code=404, reply-text=NOT_FOUND - no queue 'JamesMailQueue-workqueue-spool' in vhost '/', class-id=60, method-id=70)
      [null] 	at com.rabbitmq.client.impl.ChannelN.asyncShutdown(ChannelN.java:516)
      [null] 	at com.rabbitmq.client.impl.ChannelN.processAsync(ChannelN.java:346)
      [null] 	at com.rabbitmq.client.impl.AMQChannel.handleCompleteInboundCommand(AMQChannel.java:178)
      [null] 	at com.rabbitmq.client.impl.AMQChannel.handleFrame(AMQChannel.java:111)
      [null] 	at com.rabbitmq.client.impl.AMQConnection.readFrame(AMQConnection.java:670)
      [null] 	at com.rabbitmq.client.impl.AMQConnection.access$300(AMQConnection.java:48)
      [null] 	at com.rabbitmq.client.impl.AMQConnection$MainLoop.run(AMQConnection.java:597)
      [null] 	... 1 common frames omitted
      [null] Wrapped by: com.rabbitmq.client.ShutdownSignalException: channel error; protocol method: #method<channel.close>(reply-code=404, reply-text=NOT_FOUND - no queue 'JamesMailQueue-workqueue-spool' in vhost '/', class-id=60, method-id=70)
      [null] 	at com.rabbitmq.utility.ValueOrException.getValue(ValueOrException.java:66)
      [null] 	at com.rabbitmq.utility.BlockingValueOrException.uninterruptibleGetValue(BlockingValueOrException.java:36)
      [null] 	at com.rabbitmq.client.impl.AMQChannel$BlockingRpcContinuation.getReply(AMQChannel.java:494)
      [null] 	at com.rabbitmq.client.impl.AMQChannel.privateRpc(AMQChannel.java:288)
      [null] 	at com.rabbitmq.client.impl.AMQChannel.exnWrappingRpc(AMQChannel.java:138)
      [null] 	... 16 common frames omitted
      [null] Wrapped by: java.io.IOException: null
      [null] 	at com.rabbitmq.client.impl.AMQChannel.wrap(AMQChannel.java:126)
      [null] 	at com.rabbitmq.client.impl.AMQChannel.wrap(AMQChannel.java:122)
      [null] 	at com.rabbitmq.client.impl.AMQChannel.exnWrappingRpc(AMQChannel.java:144)
      [null] 	at com.rabbitmq.client.impl.ChannelN.basicGet(ChannelN.java:1148)
      [null] 	at com.rabbitmq.client.impl.recovery.AutorecoveringChannel.basicGet(AutorecoveringChannel.java:431)
      [null] 	at org.apache.james.queue.rabbitmq.RabbitClient.lambda$poll$4(RabbitClient.java:86)
      [null] 	at org.apache.james.backend.rabbitmq.SimpleChannelPool.execute(SimpleChannelPool.java:46)
      [null] 	at org.apache.james.queue.rabbitmq.RabbitClient.poll(RabbitClient.java:87)
      [null] 	at org.apache.james.queue.rabbitmq.Dequeuer.singleChannelRead(Dequeuer.java:136)
      [null] 	at com.nurkiewicz.asyncretry.AsyncRetryExecutor.lambda$getWithRetry$1(AsyncRetryExecutor.java:62)
      [null] 	at com.nurkiewicz.asyncretry.SyncRetryJob.run(SyncRetryJob.java:23)
      [null] 	... 8 common frames omitted
      [null] Wrapped by: java.util.concurrent.CompletionException: java.io.IOException
      [null] 	at java.util.concurrent.CompletableFuture.encodeThrowable(CompletableFuture.java:292)
      [null] 	at java.util.concurrent.CompletableFuture.completeThrowable(CompletableFuture.java:308)
      [null] 	at java.util.concurrent.CompletableFuture.uniApply(CompletableFuture.java:593)
      [null] 	at java.util.concurrent.CompletableFuture$UniApply.tryFire(CompletableFuture.java:577)
      [null] 	at java.util.concurrent.CompletableFuture.postComplete(CompletableFuture.java:474)
      [null] 	at java.util.concurrent.CompletableFuture.completeExceptionally(CompletableFuture.java:1977)
      [null] 	at com.nurkiewicz.asyncretry.RetryJob.retryOrAbort(RetryJob.java:74)
      [null] 	at com.nurkiewicz.asyncretry.RetryJob.handleUserThrowable(RetryJob.java:58)
      [null] 	at com.nurkiewicz.asyncretry.RetryJob.handleThrowable(RetryJob.java:50)
      [null] 	at com.nurkiewicz.asyncretry.SyncRetryJob.run(SyncRetryJob.java:26)
      [null] 	at com.nurkiewicz.asyncretry.RetryJob.run(RetryJob.java:108)
      [null] 	at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511)
      [null] 	at java.util.concurrent.FutureTask.run(FutureTask.java:266)
      [null] 	at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.access$201(ScheduledThreadPoolExecutor.java:180)
      [null] 	at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:293)
      [null] 	at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)
      [null] 	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)
      [null] 	at java.lang.Thread.run(Thread.java:748)
      [null] 11:45:52.196 [WARN ] o.a.j.q.r.RabbitMQMailQueue - Delays are not supported by RabbitMQ. Flush is a NOOP.
      [null] [ERROR] Tests run: 73, Failures: 1, Errors: 1, Skipped: 0, Time elapsed: 339.588 s <<< FAILURE! - in org.apache.james.queue.rabbitmq.RabbitMQMailQueueTest
      

      Attachments

        Activity

          People

            Unassigned Unassigned
            btellier Benoit Tellier
            Votes:
            0 Vote for this issue
            Watchers:
            1 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved: