You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@activemq.apache.org by "Ben (JIRA)" <ji...@apache.org> on 2009/11/06 17:11:20 UTC

[jira] Created: (AMQ-2480) Stomp Transport Dispatcher Fails on NPE

Stomp Transport Dispatcher Fails on NPE
---------------------------------------

                 Key: AMQ-2480
                 URL: https://issues.apache.org/activemq/browse/AMQ-2480
             Project: ActiveMQ
          Issue Type: Bug
          Components: Transport
    Affects Versions: 5.3.0, 5.4.0
         Environment: Windows XP, JRE6
            Reporter: Ben


We have been using ActiveMQ 5.2 on Windows for about 6months with a relatively low message throughput (a maximum usage 1 message every 4 seconds, nothing crazy) and it was working perfectly.  We have several clients that connect through either an OpenWire or Stomp connection and communicate through Queues.   

Several days ago I started testing higher throughput (several messages/second) messaging by publishing to a Queue from an OpenWire connection and consuming the message on a Stomp connection.  At some point there is a failure in the Dispatcher for the Stomp connection and my client stops receiving messages.  The OpenWire connection is unaffected and continues filling the Queue.  I have since upgraded to ActiveMQ 5.3 because there were some issues fixed related to Stomp connection, but still see the same issue.  The only exception is :

Exception in thread "ActiveMQ Connection Dispatcher: /127.0.0.1:3047" java.lang.NullPointerException 

        at org.apache.activemq.transport.stomp.LegacyFrameTranslator.convertMessage(LegacyFrameTranslator.java:69) 
        at org.apache.activemq.transport.stomp.ProtocolConverter.convertMessage(ProtocolConverter.java:594) 
        at org.apache.activemq.transport.stomp.StompSubscription.onMessageDispatch(StompSubscription.java:92) 
        at org.apache.activemq.transport.stomp.ProtocolConverter.onActiveMQCommand(ProtocolConverter.java:576) 
        at org.apache.activemq.transport.stomp.StompTransportFilter.oneway(StompTransportFilter.java:56) 
        at org.apache.activemq.transport.MutexTransport.oneway(MutexTransport.java:40) 
        at org.apache.activemq.broker.TransportConnection.dispatch(TransportConnection.java:1190) 
        at org.apache.activemq.broker.TransportConnection.processDispatch(TransportConnection.java:779) 
        at org.apache.activemq.broker.TransportConnection.iterate(TransportConnection.java:815) 
        at org.apache.activemq.thread.DedicatedTaskRunner.runTask(DedicatedTaskRunner.java:98) 
        at org.apache.activemq.thread.DedicatedTaskRunner$1.run(DedicatedTaskRunner.java:36) 

I thought I would also note that with the nice new "Connector" page on the admin interface it shows the connection to my Stomp client as connected, and similarly the "Queues" page lists the Stomp consumer on the Queue, but the pending messages just keeps growing.

The client library we are using for the Stomp connection is from Codehaus (http://stomp.codehaus.org/C).  Our OpenWire connection is utilizing Spring frameworks JMS library.

I'm going to continue to look for a test case to reproduce my error. 

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


[jira] Commented: (AMQ-2480) Stomp Transport Dispatcher Fails on NPE

Posted by "Adam Walczak (JIRA)" <ji...@apache.org>.
    [ https://issues.apache.org/activemq/browse/AMQ-2480?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=56393#action_56393 ] 

Adam Walczak commented on AMQ-2480:
-----------------------------------

I have a similar problem. I use the PHP Stomp librart from Fuse. A PHP process is listening to a topic where a dozen of Java JMS clients are posting. Every now a then the process just stops receiving messages from just that topic (it hears other queues). Even adding a reconnect every hour didn't help.

> Stomp Transport Dispatcher Fails on NPE
> ---------------------------------------
>
>                 Key: AMQ-2480
>                 URL: https://issues.apache.org/activemq/browse/AMQ-2480
>             Project: ActiveMQ
>          Issue Type: Bug
>          Components: Transport
>    Affects Versions: 5.3.0, 5.4.0
>         Environment: Windows XP, JRE6
>            Reporter: Ben
>
> We have been using ActiveMQ 5.2 on Windows for about 6months with a relatively low message throughput (a maximum usage 1 message every 4 seconds, nothing crazy) and it was working perfectly.  We have several clients that connect through either an OpenWire or Stomp connection and communicate through Queues.   
> Several days ago I started testing higher throughput (several messages/second) messaging by publishing to a Queue from an OpenWire connection and consuming the message on a Stomp connection.  At some point there is a failure in the Dispatcher for the Stomp connection and my client stops receiving messages.  The OpenWire connection is unaffected and continues filling the Queue.  I have since upgraded to ActiveMQ 5.3 because there were some issues fixed related to Stomp connection, but still see the same issue.  The only exception is :
> Exception in thread "ActiveMQ Connection Dispatcher: /127.0.0.1:3047" java.lang.NullPointerException 
>         at org.apache.activemq.transport.stomp.LegacyFrameTranslator.convertMessage(LegacyFrameTranslator.java:69) 
>         at org.apache.activemq.transport.stomp.ProtocolConverter.convertMessage(ProtocolConverter.java:594) 
>         at org.apache.activemq.transport.stomp.StompSubscription.onMessageDispatch(StompSubscription.java:92) 
>         at org.apache.activemq.transport.stomp.ProtocolConverter.onActiveMQCommand(ProtocolConverter.java:576) 
>         at org.apache.activemq.transport.stomp.StompTransportFilter.oneway(StompTransportFilter.java:56) 
>         at org.apache.activemq.transport.MutexTransport.oneway(MutexTransport.java:40) 
>         at org.apache.activemq.broker.TransportConnection.dispatch(TransportConnection.java:1190) 
>         at org.apache.activemq.broker.TransportConnection.processDispatch(TransportConnection.java:779) 
>         at org.apache.activemq.broker.TransportConnection.iterate(TransportConnection.java:815) 
>         at org.apache.activemq.thread.DedicatedTaskRunner.runTask(DedicatedTaskRunner.java:98) 
>         at org.apache.activemq.thread.DedicatedTaskRunner$1.run(DedicatedTaskRunner.java:36) 
> I thought I would also note that with the nice new "Connector" page on the admin interface it shows the connection to my Stomp client as connected, and similarly the "Queues" page lists the Stomp consumer on the Queue, but the pending messages just keeps growing.
> The client library we are using for the Stomp connection is from Codehaus (http://stomp.codehaus.org/C).  Our OpenWire connection is utilizing Spring frameworks JMS library.
> I'm going to continue to look for a test case to reproduce my error. 

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


[jira] Commented: (AMQ-2480) Stomp Transport Dispatcher Fails on NPE

Posted by "Ben (JIRA)" <ji...@apache.org>.
    [ https://issues.apache.org/activemq/browse/AMQ-2480?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=55248#action_55248 ] 

Ben commented on AMQ-2480:
--------------------------

Debugging this and reproduced with a breakpoint in the presumed erroneous code.  It seems to be the getText() method of the ActiveMQTextMessage is returning null and the convertMessage of the LegacyFrameTranslator is trying to getBytes() of the null text.

Still looking further into this.

> Stomp Transport Dispatcher Fails on NPE
> ---------------------------------------
>
>                 Key: AMQ-2480
>                 URL: https://issues.apache.org/activemq/browse/AMQ-2480
>             Project: ActiveMQ
>          Issue Type: Bug
>          Components: Transport
>    Affects Versions: 5.3.0, 5.4.0
>         Environment: Windows XP, JRE6
>            Reporter: Ben
>
> We have been using ActiveMQ 5.2 on Windows for about 6months with a relatively low message throughput (a maximum usage 1 message every 4 seconds, nothing crazy) and it was working perfectly.  We have several clients that connect through either an OpenWire or Stomp connection and communicate through Queues.   
> Several days ago I started testing higher throughput (several messages/second) messaging by publishing to a Queue from an OpenWire connection and consuming the message on a Stomp connection.  At some point there is a failure in the Dispatcher for the Stomp connection and my client stops receiving messages.  The OpenWire connection is unaffected and continues filling the Queue.  I have since upgraded to ActiveMQ 5.3 because there were some issues fixed related to Stomp connection, but still see the same issue.  The only exception is :
> Exception in thread "ActiveMQ Connection Dispatcher: /127.0.0.1:3047" java.lang.NullPointerException 
>         at org.apache.activemq.transport.stomp.LegacyFrameTranslator.convertMessage(LegacyFrameTranslator.java:69) 
>         at org.apache.activemq.transport.stomp.ProtocolConverter.convertMessage(ProtocolConverter.java:594) 
>         at org.apache.activemq.transport.stomp.StompSubscription.onMessageDispatch(StompSubscription.java:92) 
>         at org.apache.activemq.transport.stomp.ProtocolConverter.onActiveMQCommand(ProtocolConverter.java:576) 
>         at org.apache.activemq.transport.stomp.StompTransportFilter.oneway(StompTransportFilter.java:56) 
>         at org.apache.activemq.transport.MutexTransport.oneway(MutexTransport.java:40) 
>         at org.apache.activemq.broker.TransportConnection.dispatch(TransportConnection.java:1190) 
>         at org.apache.activemq.broker.TransportConnection.processDispatch(TransportConnection.java:779) 
>         at org.apache.activemq.broker.TransportConnection.iterate(TransportConnection.java:815) 
>         at org.apache.activemq.thread.DedicatedTaskRunner.runTask(DedicatedTaskRunner.java:98) 
>         at org.apache.activemq.thread.DedicatedTaskRunner$1.run(DedicatedTaskRunner.java:36) 
> I thought I would also note that with the nice new "Connector" page on the admin interface it shows the connection to my Stomp client as connected, and similarly the "Queues" page lists the Stomp consumer on the Queue, but the pending messages just keeps growing.
> The client library we are using for the Stomp connection is from Codehaus (http://stomp.codehaus.org/C).  Our OpenWire connection is utilizing Spring frameworks JMS library.
> I'm going to continue to look for a test case to reproduce my error. 

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


[jira] Commented: (AMQ-2480) Stomp Transport Dispatcher Fails on NPE

Posted by "Adam Walczak (JIRA)" <ji...@apache.org>.
    [ https://issues.apache.org/activemq/browse/AMQ-2480?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=56397#action_56397 ] 

Adam Walczak commented on AMQ-2480:
-----------------------------------

Thats another issue with ActiveMQ I have that sometimes text messages loose their body when going between remote jms clients and the local php process (besides memory leaks and other issues). I'm switching to nio transports today. May be in some bizarre way this will help.

> Stomp Transport Dispatcher Fails on NPE
> ---------------------------------------
>
>                 Key: AMQ-2480
>                 URL: https://issues.apache.org/activemq/browse/AMQ-2480
>             Project: ActiveMQ
>          Issue Type: Bug
>          Components: Transport
>    Affects Versions: 5.3.0, 5.4.0
>         Environment: Windows XP, JRE6
>            Reporter: Ben
>
> We have been using ActiveMQ 5.2 on Windows for about 6months with a relatively low message throughput (a maximum usage 1 message every 4 seconds, nothing crazy) and it was working perfectly.  We have several clients that connect through either an OpenWire or Stomp connection and communicate through Queues.   
> Several days ago I started testing higher throughput (several messages/second) messaging by publishing to a Queue from an OpenWire connection and consuming the message on a Stomp connection.  At some point there is a failure in the Dispatcher for the Stomp connection and my client stops receiving messages.  The OpenWire connection is unaffected and continues filling the Queue.  I have since upgraded to ActiveMQ 5.3 because there were some issues fixed related to Stomp connection, but still see the same issue.  The only exception is :
> Exception in thread "ActiveMQ Connection Dispatcher: /127.0.0.1:3047" java.lang.NullPointerException 
>         at org.apache.activemq.transport.stomp.LegacyFrameTranslator.convertMessage(LegacyFrameTranslator.java:69) 
>         at org.apache.activemq.transport.stomp.ProtocolConverter.convertMessage(ProtocolConverter.java:594) 
>         at org.apache.activemq.transport.stomp.StompSubscription.onMessageDispatch(StompSubscription.java:92) 
>         at org.apache.activemq.transport.stomp.ProtocolConverter.onActiveMQCommand(ProtocolConverter.java:576) 
>         at org.apache.activemq.transport.stomp.StompTransportFilter.oneway(StompTransportFilter.java:56) 
>         at org.apache.activemq.transport.MutexTransport.oneway(MutexTransport.java:40) 
>         at org.apache.activemq.broker.TransportConnection.dispatch(TransportConnection.java:1190) 
>         at org.apache.activemq.broker.TransportConnection.processDispatch(TransportConnection.java:779) 
>         at org.apache.activemq.broker.TransportConnection.iterate(TransportConnection.java:815) 
>         at org.apache.activemq.thread.DedicatedTaskRunner.runTask(DedicatedTaskRunner.java:98) 
>         at org.apache.activemq.thread.DedicatedTaskRunner$1.run(DedicatedTaskRunner.java:36) 
> I thought I would also note that with the nice new "Connector" page on the admin interface it shows the connection to my Stomp client as connected, and similarly the "Queues" page lists the Stomp consumer on the Queue, but the pending messages just keeps growing.
> The client library we are using for the Stomp connection is from Codehaus (http://stomp.codehaus.org/C).  Our OpenWire connection is utilizing Spring frameworks JMS library.
> I'm going to continue to look for a test case to reproduce my error. 

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


[jira] Commented: (AMQ-2480) Stomp Transport Dispatcher Fails on NPE

Posted by "Ben (JIRA)" <ji...@apache.org>.
    [ https://issues.apache.org/activemq/browse/AMQ-2480?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=56395#action_56395 ] 

Ben commented on AMQ-2480:
--------------------------

This is a result of a null message being sent from a JMS producer.  To stop this from crashing you would need a null check in getText() of the ActiveMQTextMessage object.  Not sure if the fix should throw some exception or if it should put in 0 bytes,  my first thought is the latter.

> Stomp Transport Dispatcher Fails on NPE
> ---------------------------------------
>
>                 Key: AMQ-2480
>                 URL: https://issues.apache.org/activemq/browse/AMQ-2480
>             Project: ActiveMQ
>          Issue Type: Bug
>          Components: Transport
>    Affects Versions: 5.3.0, 5.4.0
>         Environment: Windows XP, JRE6
>            Reporter: Ben
>
> We have been using ActiveMQ 5.2 on Windows for about 6months with a relatively low message throughput (a maximum usage 1 message every 4 seconds, nothing crazy) and it was working perfectly.  We have several clients that connect through either an OpenWire or Stomp connection and communicate through Queues.   
> Several days ago I started testing higher throughput (several messages/second) messaging by publishing to a Queue from an OpenWire connection and consuming the message on a Stomp connection.  At some point there is a failure in the Dispatcher for the Stomp connection and my client stops receiving messages.  The OpenWire connection is unaffected and continues filling the Queue.  I have since upgraded to ActiveMQ 5.3 because there were some issues fixed related to Stomp connection, but still see the same issue.  The only exception is :
> Exception in thread "ActiveMQ Connection Dispatcher: /127.0.0.1:3047" java.lang.NullPointerException 
>         at org.apache.activemq.transport.stomp.LegacyFrameTranslator.convertMessage(LegacyFrameTranslator.java:69) 
>         at org.apache.activemq.transport.stomp.ProtocolConverter.convertMessage(ProtocolConverter.java:594) 
>         at org.apache.activemq.transport.stomp.StompSubscription.onMessageDispatch(StompSubscription.java:92) 
>         at org.apache.activemq.transport.stomp.ProtocolConverter.onActiveMQCommand(ProtocolConverter.java:576) 
>         at org.apache.activemq.transport.stomp.StompTransportFilter.oneway(StompTransportFilter.java:56) 
>         at org.apache.activemq.transport.MutexTransport.oneway(MutexTransport.java:40) 
>         at org.apache.activemq.broker.TransportConnection.dispatch(TransportConnection.java:1190) 
>         at org.apache.activemq.broker.TransportConnection.processDispatch(TransportConnection.java:779) 
>         at org.apache.activemq.broker.TransportConnection.iterate(TransportConnection.java:815) 
>         at org.apache.activemq.thread.DedicatedTaskRunner.runTask(DedicatedTaskRunner.java:98) 
>         at org.apache.activemq.thread.DedicatedTaskRunner$1.run(DedicatedTaskRunner.java:36) 
> I thought I would also note that with the nice new "Connector" page on the admin interface it shows the connection to my Stomp client as connected, and similarly the "Queues" page lists the Stomp consumer on the Queue, but the pending messages just keeps growing.
> The client library we are using for the Stomp connection is from Codehaus (http://stomp.codehaus.org/C).  Our OpenWire connection is utilizing Spring frameworks JMS library.
> I'm going to continue to look for a test case to reproduce my error. 

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


[jira] Updated: (AMQ-2480) Stomp Transport Dispatcher Fails on NPE

Posted by "Bruce Snyder (JIRA)" <ji...@apache.org>.
     [ https://issues.apache.org/activemq/browse/AMQ-2480?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Bruce Snyder updated AMQ-2480:
------------------------------

    Fix Version/s: 5.5.0
                       (was: 5.4.1)

> Stomp Transport Dispatcher Fails on NPE
> ---------------------------------------
>
>                 Key: AMQ-2480
>                 URL: https://issues.apache.org/activemq/browse/AMQ-2480
>             Project: ActiveMQ
>          Issue Type: Bug
>          Components: Transport
>    Affects Versions: 5.3.0, 5.4.0
>         Environment: Windows XP, JRE6
>            Reporter: Ben
>             Fix For: 5.5.0
>
>
> We have been using ActiveMQ 5.2 on Windows for about 6months with a relatively low message throughput (a maximum usage 1 message every 4 seconds, nothing crazy) and it was working perfectly.  We have several clients that connect through either an OpenWire or Stomp connection and communicate through Queues.   
> Several days ago I started testing higher throughput (several messages/second) messaging by publishing to a Queue from an OpenWire connection and consuming the message on a Stomp connection.  At some point there is a failure in the Dispatcher for the Stomp connection and my client stops receiving messages.  The OpenWire connection is unaffected and continues filling the Queue.  I have since upgraded to ActiveMQ 5.3 because there were some issues fixed related to Stomp connection, but still see the same issue.  The only exception is :
> Exception in thread "ActiveMQ Connection Dispatcher: /127.0.0.1:3047" java.lang.NullPointerException 
>         at org.apache.activemq.transport.stomp.LegacyFrameTranslator.convertMessage(LegacyFrameTranslator.java:69) 
>         at org.apache.activemq.transport.stomp.ProtocolConverter.convertMessage(ProtocolConverter.java:594) 
>         at org.apache.activemq.transport.stomp.StompSubscription.onMessageDispatch(StompSubscription.java:92) 
>         at org.apache.activemq.transport.stomp.ProtocolConverter.onActiveMQCommand(ProtocolConverter.java:576) 
>         at org.apache.activemq.transport.stomp.StompTransportFilter.oneway(StompTransportFilter.java:56) 
>         at org.apache.activemq.transport.MutexTransport.oneway(MutexTransport.java:40) 
>         at org.apache.activemq.broker.TransportConnection.dispatch(TransportConnection.java:1190) 
>         at org.apache.activemq.broker.TransportConnection.processDispatch(TransportConnection.java:779) 
>         at org.apache.activemq.broker.TransportConnection.iterate(TransportConnection.java:815) 
>         at org.apache.activemq.thread.DedicatedTaskRunner.runTask(DedicatedTaskRunner.java:98) 
>         at org.apache.activemq.thread.DedicatedTaskRunner$1.run(DedicatedTaskRunner.java:36) 
> I thought I would also note that with the nice new "Connector" page on the admin interface it shows the connection to my Stomp client as connected, and similarly the "Queues" page lists the Stomp consumer on the Queue, but the pending messages just keeps growing.
> The client library we are using for the Stomp connection is from Codehaus (http://stomp.codehaus.org/C).  Our OpenWire connection is utilizing Spring frameworks JMS library.
> I'm going to continue to look for a test case to reproduce my error. 

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


[jira] Commented: (AMQ-2480) Stomp Transport Dispatcher Fails on NPE

Posted by "Trey Hyde (JIRA)" <ji...@apache.org>.
    [ https://issues.apache.org/activemq/browse/AMQ-2480?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=62738#action_62738 ] 

Trey Hyde commented on AMQ-2480:
--------------------------------

I have this issue with 5.4.1.  I got it within a few minutes of starting up the broker.  I did not have this issue in the ~6month that 5.3.1 was up with the same setup.

> Stomp Transport Dispatcher Fails on NPE
> ---------------------------------------
>
>                 Key: AMQ-2480
>                 URL: https://issues.apache.org/activemq/browse/AMQ-2480
>             Project: ActiveMQ
>          Issue Type: Bug
>          Components: Transport
>    Affects Versions: 5.3.0, 5.4.0
>         Environment: Windows XP, JRE6
>            Reporter: Ben
>             Fix For: 5.5.0
>
>
> We have been using ActiveMQ 5.2 on Windows for about 6months with a relatively low message throughput (a maximum usage 1 message every 4 seconds, nothing crazy) and it was working perfectly.  We have several clients that connect through either an OpenWire or Stomp connection and communicate through Queues.   
> Several days ago I started testing higher throughput (several messages/second) messaging by publishing to a Queue from an OpenWire connection and consuming the message on a Stomp connection.  At some point there is a failure in the Dispatcher for the Stomp connection and my client stops receiving messages.  The OpenWire connection is unaffected and continues filling the Queue.  I have since upgraded to ActiveMQ 5.3 because there were some issues fixed related to Stomp connection, but still see the same issue.  The only exception is :
> Exception in thread "ActiveMQ Connection Dispatcher: /127.0.0.1:3047" java.lang.NullPointerException 
>         at org.apache.activemq.transport.stomp.LegacyFrameTranslator.convertMessage(LegacyFrameTranslator.java:69) 
>         at org.apache.activemq.transport.stomp.ProtocolConverter.convertMessage(ProtocolConverter.java:594) 
>         at org.apache.activemq.transport.stomp.StompSubscription.onMessageDispatch(StompSubscription.java:92) 
>         at org.apache.activemq.transport.stomp.ProtocolConverter.onActiveMQCommand(ProtocolConverter.java:576) 
>         at org.apache.activemq.transport.stomp.StompTransportFilter.oneway(StompTransportFilter.java:56) 
>         at org.apache.activemq.transport.MutexTransport.oneway(MutexTransport.java:40) 
>         at org.apache.activemq.broker.TransportConnection.dispatch(TransportConnection.java:1190) 
>         at org.apache.activemq.broker.TransportConnection.processDispatch(TransportConnection.java:779) 
>         at org.apache.activemq.broker.TransportConnection.iterate(TransportConnection.java:815) 
>         at org.apache.activemq.thread.DedicatedTaskRunner.runTask(DedicatedTaskRunner.java:98) 
>         at org.apache.activemq.thread.DedicatedTaskRunner$1.run(DedicatedTaskRunner.java:36) 
> I thought I would also note that with the nice new "Connector" page on the admin interface it shows the connection to my Stomp client as connected, and similarly the "Queues" page lists the Stomp consumer on the Queue, but the pending messages just keeps growing.
> The client library we are using for the Stomp connection is from Codehaus (http://stomp.codehaus.org/C).  Our OpenWire connection is utilizing Spring frameworks JMS library.
> I'm going to continue to look for a test case to reproduce my error. 

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.