You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@activemq.apache.org by "ASF subversion and git services (JIRA)" <ji...@apache.org> on 2018/07/12 18:51:00 UTC

[jira] [Commented] (ARTEMIS-1928) Message conversion on certain body types will cause NPE

    [ https://issues.apache.org/jira/browse/ARTEMIS-1928?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16542084#comment-16542084 ] 

ASF subversion and git services commented on ARTEMIS-1928:
----------------------------------------------------------

Commit 0791ee2740b79528523c635cfb7a02d6d1c39856 in activemq-artemis's branch refs/heads/2.6.x from Clebert Suconic
[ https://git-wip-us.apache.org/repos/asf?p=activemq-artemis.git;h=0791ee2 ]

ARTEMIS-1928 Fixing body conversion of LargeMessages to AMQP

(cherry picked from commit efd966d88d1a3ff4612c29729c8c717f075de943)


> Message conversion on certain body types will cause NPE
> -------------------------------------------------------
>
>                 Key: ARTEMIS-1928
>                 URL: https://issues.apache.org/jira/browse/ARTEMIS-1928
>             Project: ActiveMQ Artemis
>          Issue Type: Bug
>          Components: AMQP, Broker
>    Affects Versions: 2.6.1
>         Environment: * Broker Version: 2.6.1
>  * Client: AMQPNetLite v2.1.2
>  * Host OS: Linux node 4.9.0-6-amd64 #1 SMP Debian 4.9.88-1+deb9u1 (2018-05-07) x86_64 GNU/Linux
>  * Host Platform: AWS EC2
>  * broker.xml from node1 attached as node1-broker.xml
>  * broker.xml from node2 attached as node2-broker.xml
>            Reporter: Simon Chalmers
>            Priority: Critical
>             Fix For: 2.7.0, 2.6.3
>
>         Attachments: node1-broker.xml, node2-broker.xml
>
>
>  
> Steps to produce, using a producing application (running AMQPNetLite) connecting to node1 of the cluster:
>  * Create queue1, publish 199 messages to it
>  * Create queue2, publish 1 message to it
> Running a consuming application (AMQPNetLite) connecting to node2 of the cluster:
>  * On node1 of the cluster, queue1 & queue2 now have 0 messages in it
>  * On node2 of the cluster, queue1 has 200 messages in it and queue2 has 2 messages in it (i.e. an additional message in each queue, even though the consuming application is not publishing any messages).
>  * The consuming application connected to node2 of the cluster does not consume any messages off either queue1 or queue2 from node2 (of the cluster).
> In artemis.log on node2 of the cluster, the following appears:
> {noformat}
> 2018-06-13 02:41:00,604 WARN  [org.apache.activemq.artemis.core.server] AMQ222151: removing consumer which did not handle a message, consumer=ServerConsumerImpl [id=1, filter=null, binding=LocalQueueBinding [address=internal/queue.in/spatial-processing-service/440bfafe-76e5-4867-8b00-f1533d855549/0/update-terrain-request, queue=QueueImpl[name=internal/queue.in/spatial-processing-service/440bfafe-76e5-4867-8b00-f1533d855549/0/update-terrain-request, postOffice=PostOfficeImpl [server=ActiveMQServerImpl::serverUUID=f80e9286-6e9f-11e8-bd64-0204cf8299ac], temp=false]@50517445, filter=null, name=internal/queue.in/spatial-processing-service/440bfafe-76e5-4867-8b00-f1533d855549/0/update-terrain-request, clusterName=internal/queue.in/spatial-processing-service/440bfafe-76e5-4867-8b00-f1533d855549/0/update-terrain-requestf80e9286-6e9f-11e8-bd64-0204cf8299ac]], message=Reference[117]:NON-RELIABLE:LargeServerMessage[messageID=117,durable=false,userID=null,priority=0, timestamp=0,expiration=0, durable=false, address=internal/queue.in/spatial-processing-service/440bfafe-76e5-4867-8b00-f1533d855549/0/update-terrain-request, properties=TypedProperties[_AMQ_LARGE_SIZE=330649]]@2025498374: java.lang.IllegalStateException: Can't deliver message java.lang.NullPointerException
>         at org.apache.activemq.artemis.protocol.amqp.broker.AMQPSessionCallback.sendMessage(AMQPSessionCallback.java:652) [artemis-amqp-protocol-2.6.1.jar:]
>         at org.apache.activemq.artemis.core.server.impl.ServerConsumerImpl.deliverStandardMessage(ServerConsumerImpl.java:1106) [artemis-server-2.6.1.jar:2.6.1]
>         at org.apache.activemq.artemis.core.server.impl.ServerConsumerImpl.proceedDeliver(ServerConsumerImpl.java:464) [artemis-server-2.6.1.jar:2.6.1]
>         at org.apache.activemq.artemis.core.server.impl.QueueImpl.proceedDeliver(QueueImpl.java:2934) [artemis-server-2.6.1.jar:2.6.1]
>         at org.apache.activemq.artemis.core.server.impl.QueueImpl.deliver(QueueImpl.java:2402) [artemis-server-2.6.1.jar:2.6.1]
>         at org.apache.activemq.artemis.core.server.impl.QueueImpl.access$2000(QueueImpl.java:107) [artemis-server-2.6.1.jar:2.6.1]
>         at org.apache.activemq.artemis.core.server.impl.QueueImpl$DeliverRunner.run(QueueImpl.java:3207) [artemis-server-2.6.1.jar:2.6.1]
>         at org.apache.activemq.artemis.utils.actors.OrderedExecutor.doTask(OrderedExecutor.java:42) [artemis-commons-2.6.1.jar:2.6.1]
>         at org.apache.activemq.artemis.utils.actors.OrderedExecutor.doTask(OrderedExecutor.java:31) [artemis-commons-2.6.1.jar:2.6.1]
>         at org.apache.activemq.artemis.utils.actors.ProcessorBase.executePendingTasks(ProcessorBase.java:66) [artemis-commons-2.6.1.jar:2.6.1]
>         at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149) [rt.jar:1.8.0_171]
>         at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624) [rt.jar:1.8.0_171]
>         at org.apache.activemq.artemis.utils.ActiveMQThreadFactory$1.run(ActiveMQThreadFactory.java:118) [artemis-commons-2.6.1.jar:2.6.1]
> Caused by: java.lang.NullPointerException
>         at org.apache.activemq.artemis.core.message.impl.CoreMessage.internalWritableBuffer(CoreMessage.java:360) [artemis-core-client-2.6.1.jar:2.6.1]
>         at org.apache.activemq.artemis.core.message.impl.CoreMessage.getBodyBuffer(CoreMessage.java:353) [artemis-core-client-2.6.1.jar:2.6.1]
>         at org.apache.activemq.artemis.protocol.amqp.converter.CoreAmqpConverter.convertBody(CoreAmqpConverter.java:384) [artemis-amqp-protocol-2.6.1.jar:]
>         at org.apache.activemq.artemis.protocol.amqp.converter.CoreAmqpConverter.fromCore(CoreAmqpConverter.java:126) [artemis-amqp-protocol-2.6.1.jar:]
>         at org.apache.activemq.artemis.protocol.amqp.converter.CoreAmqpConverter.checkAMQP(CoreAmqpConverter.java:106) [artemis-amqp-protocol-2.6.1.jar:]
>         at org.apache.activemq.artemis.protocol.amqp.proton.ProtonServerSenderContext.deliverMessage(ProtonServerSenderContext.java:681) [artemis-amqp-protocol-2.6.1.jar:]
>         at org.apache.activemq.artemis.protocol.amqp.broker.AMQPSessionCallback.sendMessage(AMQPSessionCallback.java:643) [artemis-amqp-protocol-2.6.1.jar:]
>         ... 12 more
> {noformat}



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)