骡子 ESB : why AMQP is shutting down in-between the flow with error message (Received shutdown signal for consumer tag)

标签 mule mule-studio mule-el mule-component

我正在使用AMQP连接器,并且我的队列存在于集群环境中。我不确定为什么总是填充此消息。但这并不影响任何成功运行流程。但它总是试图尝试连接。

我正在使用 Amqp 传输 jar:3.4.4 (即使我尝试使用最新的 jar 3.4.6 jar 导入),同样的错误再次发生。 Amqp 客户端:3.2.1。 我完全糊涂了。 因为我尝试了集群中不存在的相同队列,所以它工作正常。 请建议我哪里做错了。

使用 Ack(手动)也更改为“MULE_AUTO”。无奈。

      WARN  2015-01-29 14:47:29,639 [amqpReceiver.01]    org.mule.transport.amqp.internal.endpoint.receiver.MessageReceiverConsumer:    Received shutdown signal for consumer tag: amq.ctag-13inp2uTSjUnIgiNjyFYAA, the   message receiver will try to restart.

 com.rabbitmq.client.ShutdownSignalException: connection error; reason: java.io.EOFException
at com.rabbitmq.client.impl.AMQConnection.startShutdown(AMQConnection.java:715)
at com.rabbitmq.client.impl.AMQConnection.shutdown(AMQConnection.java:705)
atcom.rabbitmq.client.impl.AMQConnection$MainLoop.run(AMQConnection.java:564)
 Caused by: java.io.EOFException
at java.io.DataInputStream.readUnsignedByte(DataInputStream.java:290)
at com.rabbitmq.client.impl.Frame.readFrom(Frame.java:95)
at com.rabbitmq.client.impl.SocketFrameHandler.readFrame(SocketFrameHandler.java:131)
at com.rabbitmq.client.impl.AMQConnection$MainLoop.run(AMQConnection.java:533)
 WARN  2015-01-29 14:47:29,642 [amqpReceiver.03]     org.mule.transport.amqp.internal.endpoint.receiver.MessageReceiverConsumer: Received shutdown signal for consumer tag: amq.ctag-G-xCK-Uj-0aF7LcrYIuo3A, the message receiver will try to restart.
com.rabbitmq.client.ShutdownSignalException: connection error; reason: java.io.EOFException
at   com.rabbitmq.client.impl.AMQConnection.startShutdown(AMQConnection.java:715)
 at com.rabbitmq.client.impl.AMQConnection.shutdown(AMQConnection.java:705)
at com.rabbitmq.client.impl.AMQConnection$MainLoop.run(AMQConnection.java:564)
  Caused by: java.io.EOFException
at java.io.DataInputStream.readUnsignedByte(DataInputStream.java:290)
at com.rabbitmq.client.impl.Frame.readFrom(Frame.java:95)
at com.rabbitmq.client.impl.SocketFrameHandler.readFrame(SocketFrameHandler.java:131)
at com.rabbitmq.client.impl.AMQConnection$MainLoop.run(AMQConnection.java:533)
  WARN  2015-01-29 14:47:29,642 [amqpReceiver.02]    org.mule.transport.amqp.internal.endpoint.receiver.MessageReceiverConsumer:   Received shutdown signal for consumer tag: amq.ctag-seeeDsnuB_1sSuo97C8OdQ, the   message receiver will try to restart.
com.rabbitmq.client.ShutdownSignalException: connection error; reason: java.io.EOFException
at com.rabbitmq.client.impl.AMQConnection.startShutdown(AMQConnection.java:715)
at com.rabbitmq.client.impl.AMQConnection.shutdown(AMQConnection.java:705)
at com.rabbitmq.client.impl.AMQConnection$MainLoop.run(AMQConnection.java:564)
  Caused by: java.io.EOFException
 at java.io.DataInputStream.readUnsignedByte(DataInputStream.java:290)
at com.rabbitmq.client.impl.Frame.readFrom(Frame.java:95)
at  com.rabbitmq.client.impl.SocketFrameHandler.readFrame(SocketFrameHandler.java:131)
at com.rabbitmq.client.impl.AMQConnection$MainLoop.run(AMQConnection.java:533)
   ERROR 2015-01-29 14:47:29,665 [AMQP Connection]   org.mule.exception.DefaultSystemExceptionStrategy: 
   ********************************************************************************
  Message               : Connection shutdown detected for: AMQP_Connector
  Code                  : MULE_ERROR--2
  --------------------------------------------------------------------------------
  Exception stack is:
   1. null (java.io.EOFException)
    java.io.DataInputStream:290 (null)
     2. connection error; reason: java.io.EOFException     (com.rabbitmq.client.ShutdownSignalException)
    com.rabbitmq.client.impl.AMQConnection:715 (null)
  3. Connection shutdown detected for: AMQP_Connector  (org.mule.transport.ConnectException)
   org.mule.transport.amqp.internal.connector.AmqpConnector$1:296   (http://www.mulesoft.org/docs/site/current3/apidocs/org/mule/transport/ConnectEx    ception.html)
      --------------------------------------------------------------------------------
      Root Exception stack trace:
      java.io.EOFException
at java.io.DataInputStream.readUnsignedByte(DataInputStream.java:290)
at com.rabbitmq.client.impl.Frame.readFrom(Frame.java:95)
at     com.rabbitmq.client.impl.SocketFrameHandler.readFrame(SocketFrameHandler.java:131)
+ 3 more (set debug level logging or '-Dmule.verbose.exceptions=true' for    everything)
         ********************************************************************************
   INFO  2015-01-29 14:47:29,696 [AMQP Connection ]  org.mule.exception.DefaultSystemExceptionStrategy: Exception caught is a   ConnectException, attempting to reconnect...
ERROR 2015-01-29 14:47:29,698 [amqpReceiver.03]    org.mule.exception.DefaultSystemExceptionStrategy: 
 ********************************************************************************
    Message               : Impossible to create new channels on     connection: amqp://<a href="https://stackoverflow.com/cdn-cgi/l/email-protection" class="__cf_email__" data-cfemail="1d69786e695d2c2c332c2c332f2d2d2d332c2c2c" rel="noreferrer noopener nofollow">[email protected]</a>:1234/
    Code                  : MULE_ERROR--2
        --------------------------------------------------------------------------------
Exception stack is:
  1. clean connection shutdown; reason: Attempt to use closed connection   (com.rabbitmq.client.AlreadyClosedException)
com.rabbitmq.client.impl.AMQConnection:168 (null)
 2. Impossible to create new channels on connection:        amqp://<a href="https://stackoverflow.com/cdn-cgi/l/email-protection" class="__cf_email__" data-cfemail="afdbcadcdbef9e9e819e9e819d9f9f9f819e9e9e" rel="noreferrer noopener nofollow">[email protected]</a>:1234/ (org.mule.transport.ConnectException)
    org.mule.transport.amqp.internal.client.ChannelHandler:204     (http://www.mulesoft.org/docs/site/current3/apidocs/org/mule/transport/ConnectEx   ception.html)

  ERROR 2015-01-29 15:12:51,604 [amqpReceiver.34] org.mule.transport.amqp.internal.endpoint.receiver.MultiChannelMessageSubReceiver: Failed to restart: MultiChannelMessageSubReceiver(.....)

编辑:

       org.mule.api.MessagingException: Failed to ack message w/deliveryTag: 1 on channel: AMQChannel(amqp://<a href="https://stackoverflow.com/cdn-cgi/l/email-protection" class="__cf_email__" data-cfemail="2e4b54474c5b576e1f1e001f1e001f17001f1b17" rel="noreferrer noopener nofollow">[email protected]</a>:5672/,1) (org.mule.api.DefaultMuleException). Message payload is of type: String
at org.mule.execution.ExceptionToMessagingExceptionExecutionInterceptor.execute(ExceptionToMessagingExceptionExecutionInterceptor.java:32)
at org.mule.execution.MessageProcessorNotificationExecutionInterceptor.execute(MessageProcessorNotificationExecutionInterceptor.java:58)
at org.mule.execution.MessageProcessorExecutionTemplate.execute(MessageProcessorExecutionTemplate.java:44)
at org.mule.processor.chain.DefaultMessageProcessorChain.doProcess(DefaultMessageProcessorChain.java:94)
at org.mule.processor.chain.AbstractMessageProcessorChain.process(AbstractMessageProcessorChain.java:67)
at org.mule.processor.chain.InterceptingChainLifecycleWrapper.doProcess(InterceptingChainLifecycleWrapper.java:50)
at org.mule.processor.chain.AbstractMessageProcessorChain.process(AbstractMessageProcessorChain.java:67)
at org.mule.processor.chain.InterceptingChainLifecycleWrapper.access$001(InterceptingChainLifecycleWrapper.java:22)
at org.mule.processor.chain.InterceptingChainLifecycleWrapper$1.process(InterceptingChainLifecycleWrapper.java:66)
at org.mule.execution.ExceptionToMessagingExceptionExecutionInterceptor.execute(ExceptionToMessagingExceptionExecutionInterceptor.java:24)
at org.mule.execution.MessageProcessorNotificationExecutionInterceptor.execute(MessageProcessorNotificationExecutionInterceptor.java:58)
at org.mule.execution.MessageProcessorExecutionTemplate.execute(MessageProcessorExecutionTemplate.java:44)
at org.mule.processor.chain.InterceptingChainLifecycleWrapper.process(InterceptingChainLifecycleWrapper.java:61)
at org.mule.exception.TemplateMessagingExceptionStrategy.route(TemplateMessagingExceptionStrategy.java:139)
at org.mule.exception.TemplateMessagingExceptionStrategy.handleException(TemplateMessagingExceptionStrategy.java:45)
at org.mule.execution.HandleExceptionInterceptor.execute(HandleExceptionInterceptor.java:37)
at org.mule.execution.HandleExceptionInterceptor.execute(HandleExceptionInterceptor.java:14)
at org.mule.execution.BeginAndResolveTransactionInterceptor.execute(BeginAndResolveTransactionInterceptor.java:54)
at org.mule.execution.ResolvePreviousTransactionInterceptor.execute(ResolvePreviousTransactionInterceptor.java:44)
at org.mule.execution.SuspendXaTransactionInterceptor.execute(SuspendXaTransactionInterceptor.java:50)
at org.mule.execution.ValidateTransactionalStateInterceptor.execute(ValidateTransactionalStateInterceptor.java:40)
at org.mule.execution.IsolateCurrentTransactionInterceptor.execute(IsolateCurrentTransactionInterceptor.java:41)
at org.mule.execution.ExternalTransactionInterceptor.execute(ExternalTransactionInterceptor.java:48)
at org.mule.execution.RethrowExceptionInterceptor.execute(RethrowExceptionInterceptor.java:28)
at org.mule.execution.RethrowExceptionInterceptor.execute(RethrowExceptionInterceptor.java:13)
at org.mule.execution.TransactionalErrorHandlingExecutionTemplate.execute(TransactionalErrorHandlingExecutionTemplate.java:109)
at org.mule.execution.TransactionalErrorHandlingExecutionTemplate.execute(TransactionalErrorHandlingExecutionTemplate.java:30)
at org.mule.processor.AsyncInterceptingMessageProcessor$AsyncMessageProcessorWorker.doRun(AsyncInterceptingMessageProcessor.java:181)
at org.mule.work.AbstractMuleEventWork.run(AbstractMuleEventWork.java:39)
at org.mule.work.WorkerContext.run(WorkerContext.java:286)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
at java.lang.Thread.run(Thread.java:724)
Caused by: org.mule.api.DefaultMuleException: Failed to ack message w/deliveryTag: 1 on channel: AMQChannel(amqp://<a href="https://stackoverflow.com/cdn-cgi/l/email-protection" class="__cf_email__" data-cfemail="4227382b20373b0273726c73726c737b6c73777b" rel="noreferrer noopener nofollow">[email protected]</a>:5672/,1)
at org.mule.transport.amqp.internal.processor.Acknowledger.ack(Acknowledger.java:63)
at org.mule.transport.amqp.internal.processor.Acknowledger.ack(Acknowledger.java:49)
at org.mule.transport.amqp.internal.processor.Acknowledger.process(Acknowledger.java:38)
at org.mule.execution.ExceptionToMessagingExceptionExecutionInterceptor.execute(ExceptionToMessagingExceptionExecutionInterceptor.java:24)
... 32 more
Caused by: com.rabbitmq.client.AlreadyClosedException: channel is already closed due to channel error; protocol method: #method<channel.close>(reply-code=406, reply-text=PRECONDITION_FAILED - unknown delivery tag 1, class-id=60, method-id=80)
at com.rabbitmq.client.impl.AMQChannel.ensureIsOpen(AMQChannel.java:190)
at com.rabbitmq.client.impl.AMQChannel.transmit(AMQChannel.java:291)
at com.rabbitmq.client.impl.AMQChannel.transmit(AMQChannel.java:285)
at com.rabbitmq.client.impl.ChannelN.basicAck(ChannelN.java:1012)
at org.mule.transport.amqp.internal.processor.Acknowledger.ack(Acknowledger.java:59)

最佳答案

应该有一个传递标签流变量用于跟踪连接。需要该变量才能确认消息。我怀疑流量变量在某个时候会消失。如果 ACK 是在与流程开始的线程不同的单独线程中完成的,则可能会发生这种情况。原因是传递标签变量在移动到另一个线程时无法序列化/反序列化。

有什么事情是异步完成的吗?

关于骡子 ESB : why AMQP is shutting down in-between the flow with error message (Received shutdown signal for consumer tag),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28205913/

相关文章:

maven - projectHelper.attachArtifact 和 project.getArtifact().setFile 的区别

java - 维护 Mule 消息

xpath - 基于条件的 Mule 中的数组到平面映射

mule - 使用 MEL 将 Map 设置为 Mule Flow 中的有效负载

mule - 无法发布到 Mule 控制台模拟服务

java - 在 Mule 中,如何使用 MEL 创建一个数组并将其传递到 Java 组件中

mule - MULE Studio 和 MULE ESB 有什么区别?

java - MuleStudio 工作室 :studio goal failed to execute

null - ule子-如何清除有效载荷/将有效载荷设置为null?

java - Mule - 在 Mule 流中设置 spring 对象调用的属性