activemq-users mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Rob Davies <rajdav...@gmail.com>
Subject Re: Null Pointer Exception on broker
Date Wed, 16 Apr 2008 06:38:34 GMT
Hi Ramit,

only just saw you stack trace - this is a known problem - caused by a  
bug in the InactivityMonitor - its fixed in the upcoming 5.1 release  
(you could test the release candidate - here:
http://people.apache.org/~chirino/staging-repos/activemq-5.1.0-RC3/org/apache/activemq/apache-activemq/5.1.0/)

cheers,

Rob


On 16 Apr 2008, at 07:03, Ramit Arora wrote:
>
> Hey Fred,
> The problem seems to be a bit strange. It occurs only if I use  
> Solaris to
> host my broker. The problem is much more frequent if the server  
> machine is
> Solaris/x86 rather than Solaris/Sparc. Windows machines are not  
> suffering
> from this problem. And the problem disappears if i use JNDI to set my
> connection factories & destinations. Pretty weird!
>
> Thanks,
> Ramit
>
> Fred D wrote:
>>
>> Maybe try to see where the thresold is ... increase 1 or 2 subsribers
>> until it happens.
>>
>> A workaround might be to try a network of 2 brokers perhaps to see  
>> if its
>> a scaling issue.
>>
>> Fred
>>
>>
>> Ramit Arora wrote:
>>>
>>> Hi,
>>> I am testing ActiveMQ 5.0 using a Perl Publisher (using  
>>> Net::Stomp) &
>>> Java Subscribers (Openwire). It works well when the number of  
>>> subscribers
>>> is low (1 or 2) but when I increase the number of subscribers to  
>>> around
>>> 10, I face the following problem:
>>>
>>> A subscriber shows the following stack trace
>>> Exception in thread "ActiveMQ Transport:
>>> tcp://xx.yy.zz.com/nnn.nn.nnn.nn:61616"  
>>> java.lang.ClassCastException:
>>> org.apache.activemq.command.BrokerId can not be cast to
>>> org.apache.activemq.command.ConsumerId
>>>        at
>>> org 
>>> .apache 
>>> .activemq 
>>> .openwire 
>>> .v3.MessageMarshaller.tightUnmarshal(MessageMarshaller.java:71)
>>>        at
>>> org 
>>> .apache 
>>> .activemq 
>>> .openwire 
>>> .v3 
>>> .ActiveMQMessageMarshaller 
>>> .tightUnmarshal(ActiveMQMessageMarshaller.java:67)
>>>        at
>>> org 
>>> .apache 
>>> .activemq 
>>> .openwire 
>>> .v3 
>>> .ActiveMQTextMessageMarshaller 
>>> .tightUnmarshal(ActiveMQTextMessageMarshaller.java:67)
>>>        at
>>> org 
>>> .apache 
>>> .activemq 
>>> .openwire 
>>> .OpenWireFormat.tightUnmarshalNestedObject(OpenWireFormat.java:452)
>>>        at
>>> org 
>>> .apache 
>>> .activemq 
>>> .openwire 
>>> .v3 
>>> .BaseDataStreamMarshaller 
>>> .tightUnmarsalNestedObject(BaseDataStreamMarshaller.java:127)
>>>        at
>>> org 
>>> .apache 
>>> .activemq 
>>> .openwire 
>>> .v3 
>>> .MessageDispatchMarshaller 
>>> .tightUnmarshal(MessageDispatchMarshaller.java:72)
>>>        at
>>> org 
>>> .apache 
>>> .activemq.openwire.OpenWireFormat.doUnmarshal(OpenWireFormat.java: 
>>> 361)
>>>        at
>>> org 
>>> .apache 
>>> .activemq.openwire.OpenWireFormat.unmarshal(OpenWireFormat.java:275)
>>>        at
>>> org 
>>> .apache 
>>> .activemq.transport.tcp.TcpTransport.readCommand(TcpTransport.java: 
>>> 192)
>>>        at
>>> org 
>>> .apache 
>>> .activemq.transport.tcp.TcpTransport.doRun(TcpTransport.java:184)
>>>        at
>>> org 
>>> .apache.activemq.transport.tcp.TcpTransport.run(TcpTransport.java:
>>> 172)
>>>        at java.lang.Thread.run(Thread.java:619)
>>>
>>> The broker shows the following stack trace:
>>> Exception in thread "ActiveMQ Connection Dispatcher: /nnn.nn.nn.nn: 
>>> 39997"
>>> java.lang.NullPointerException
>>>        at java.lang.System.arraycopy(Native Method)
>>>        at
>>> org 
>>> .apache 
>>> .activemq 
>>> .transport 
>>> .tcp.TcpBufferedOutputStream.write(TcpBufferedOutputStream.java:89)
>>>        at java.io.DataOutputStream.write(DataOutputStream.java:90)
>>>        at
>>> org 
>>> .apache 
>>> .activemq 
>>> .openwire 
>>> .v3 
>>> .BaseDataStreamMarshaller 
>>> .tightMarshalByteSequence2(BaseDataStreamMarshaller.java:433)
>>>        at
>>> org 
>>> .apache 
>>> .activemq 
>>> .openwire 
>>> .v3.MessageMarshaller.tightMarshal2(MessageMarshaller.java:173)
>>>        at
>>> org 
>>> .apache 
>>> .activemq 
>>> .openwire 
>>> .v3 
>>> .ActiveMQMessageMarshaller 
>>> .tightMarshal2(ActiveMQMessageMarshaller.java:90)
>>>        at
>>> org 
>>> .apache 
>>> .activemq 
>>> .openwire 
>>> .v3 
>>> .ActiveMQTextMessageMarshaller 
>>> .tightMarshal2(ActiveMQTextMessageMarshaller.java:90)
>>>        at
>>> org 
>>> .apache 
>>> .activemq 
>>> .openwire 
>>> .OpenWireFormat.tightMarshalNestedObject2(OpenWireFormat.java:423)
>>>        at
>>> org 
>>> .apache 
>>> .activemq 
>>> .openwire 
>>> .v3 
>>> .BaseDataStreamMarshaller 
>>> .tightMarshalNestedObject2(BaseDataStreamMarshaller.java:137)
>>>        at
>>> org 
>>> .apache 
>>> .activemq 
>>> .openwire 
>>> .v3 
>>> .MessageDispatchMarshaller 
>>> .tightMarshal2(MessageDispatchMarshaller.java:106)
>>>        at
>>> org 
>>> .apache 
>>> .activemq.openwire.OpenWireFormat.marshal(OpenWireFormat.java:238)
>>>        at
>>> org 
>>> .apache 
>>> .activemq.transport.tcp.TcpTransport.oneway(TcpTransport.java:153)
>>>        at
>>> org 
>>> .apache 
>>> .activemq 
>>> .transport.InactivityMonitor.oneway(InactivityMonitor.java:157)
>>>        at
>>> org 
>>> .apache 
>>> .activemq.transport.TransportFilter.oneway(TransportFilter.java:82)
>>>        at
>>> org 
>>> .apache 
>>> .activemq 
>>> .transport.WireFormatNegotiator.oneway(WireFormatNegotiator.java:91)
>>>        at
>>> org 
>>> .apache 
>>> .activemq.transport.MutexTransport.oneway(MutexTransport.java:40)
>>>        at
>>> org 
>>> .apache 
>>> .activemq 
>>> .broker.TransportConnection.dispatch(TransportConnection.java:1151)
>>>        at
>>> org 
>>> .apache 
>>> .activemq 
>>> .broker 
>>> .TransportConnection.processDispatch(TransportConnection.java:766)
>>>        at
>>> org 
>>> .apache 
>>> .activemq 
>>> .broker.TransportConnection.iterate(TransportConnection.java:801)
>>>        at
>>> org 
>>> .apache 
>>> .activemq 
>>> .thread.DedicatedTaskRunner.runTask(DedicatedTaskRunner.java:98)
>>>        at
>>> org.apache.activemq.thread.DedicatedTaskRunner 
>>> $1.run(DedicatedTaskRunner.java:36)
>>>
>>> The broker & the subscriber keep running after this, but the  
>>> broker does
>>> not deliver messages to that subscriber. Other subscribers work  
>>> fine.
>>> This problem is repeatedly occuring. I am using SunOS 5.10 on a  
>>> machine
>>> with 8 processors & 32 GB of RAM.
>>> Please help!
>>>
>>> TIA,
>>> Ramit
>>>
>>>
>>>
>>
>>
>
> -- 
> View this message in context: http://www.nabble.com/Null-Pointer-Exception-on-broker-tp16048936s2354p16717003.html
> Sent from the ActiveMQ - User mailing list archive at Nabble.com.
>


Mime
  • Unnamed multipart/alternative (inline, None, 0 bytes)
View raw message